10日C-Day02-输入输出

C Language logo

printf()scanf()函数是C编程语言中内置的库函数,在C库中默认提供。这些函数是声明的,相关的宏在“stdio.h”中定义,它是C语言的头文件。

使用输入输出函数时,我们必须包括“stdio.h”头文件。

1
2
3
4
5
#include <stdio.h>

int main() {
//your codes here
}

输出函数printf()

在C语言中,printf()函数用于在输出屏幕上打印字符字符串浮点数整数八进制十六进制值

使用printf()函数,传递变量是需要使用占位符的。而且对于不同数据类型的变量的占位符是不一样的。

| 变量类型 | 占位符 |
| — | — |
| char | %c 或 %hdd |
| unsigned char | %c 或%hhu |
| short | %hd |
| unsigned short | %hu |
| long | %ld |
| unsigned long | %lu |
| int | %d |
| unsigned int | %u|
| float | %f 或 %g |
| double | %lf 或 %lg |
| 换行 | \n |

  • %f, %lf 保留小数点后面无效的0;%g, %lg舍弃
  • %nd也可以作为占位符打印整数数字,n是一个整数。打印结果一定占n个位置,空位置补充空格字符
  • %-nd打印结果也占n个位置,空位置出现在右边
  • %0nd打印结果也占n个位置,空位置用字符‘0’填充
  • %n.mf可以用来打印浮点数,打印结果中整个数字占n个位置,小数点后面占m个位置

C语言是大小写敏感的语言,例如,printf()和scanf()与Printf()和Scanf()不同。 printf()和scanf()函数中的所有字符必须为小写。

C printf()函数的示例程序:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>

int main() {
char ch = 'A';
char str[7] = 'objc.cc';
float flt = 10.24;
int no = 150;
double dbl = 2016.1128112809;
printf("Character is %c \n", ch);
printf("String is %s \n" , str);
printf("Float value is %f \n", flt);
printf("Integer value is %d\n" , no);
printf("Double value is %lf \n", dbl);
printf("Octal value is %o \n", no);
printf("Hexadecimal value is %x \n", no);
return 0;
}
1
2
3
4
5
6
7
8
9
/*程序输出
Character is A
String is objc.cc
Float value is 10.240000
Integer value is 150
Double value is 2016.112811
Octal value is 226
Hexadecimal value is 96
*/

输入函数scanf()

  • C语言中scanf()是用来读取从键盘输入的字符、字符串、数字的。

一段示例程序如下

1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main() {
char ch;
char str[100];
printf("Enter any character \n");
scanf("%c", &ch);
printf("Entered character is %c \n", ch);
printf("Enter any string ( upto 100 character ) \n");
scanf("%s", &str);
printf("Entered string is %s \n", str);
}
1
2
3
4
5
6
7
8
/*程序输出
Enter any character
abc
Entered character is abc
Enter any string ( upto 100 character )
shanghai
Entered string is shanghai
*/

格式占位符%d用于scanf()语句中。 因此,输入的值作为整数接收,%s作为字符串接收。

在和scanf()语句中的变量名ch之前使用符号作为&ch

&就是一个指针,用于指向变量。 有关指针的工作原理的更多信息,将在后面涉及。

知识点回顾:

  • printf()用于显示输出,scanf()用于读取输入。
  • printf()scanf()函数在C库中的stdio.h头文件中声明。
  • C语言中的所有语法(包括printf()scanf()函数)区分大小写。