1、printf()--输出,将变量的内容输出到显示器上。
用法:
①printf("字符串");//直接输出字符串。
②printf("输出控制符",输出参数); 单个参数的输出。
③printf("输出控制符1 输出控制符2.......",输出参数1,输出参数2,.....);多个参数的输出。
④printf("输出控制符 非输出控制符",输出参数);非输出控制符让输出的数据更易读懂。
%d | int | %lf | double |
%ld | long int | %x | 十六进制 |
%c | char | %o | 八进制 |
%f | float | %s | 字符串 |
2、scanf()--输入,通过键盘将数据输入到变量种。
用法:
①scanf("输入控制符",输入参数);
将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中。
②scanf("非输入控制符 输入控制符",输入参数);
不常用,用户在输入时必须先输入非输入控制符的内容,在输入自己需要的内容,否则会出现错误数据。非输入控制符必须原样输入。
/* 2019年7月23日00:18:38 功能:Scanf的两种用途。 */ #include <stdio.h> int main(void) { int i; // 第一种,利用输入数据。 //printf("i = "); //scanf("%d",&i); //printf("i = %d\n",i); //第二种,含有输入控制符,比较特殊。 int j; scanf("he%d",&j); printf("%d\n",j); /*在Visual C++运行结果: ------------------------ 输入:1 输出:-858993460 输入:he1 输出:1 */ return 0; }
③scanf("输入控制符 输入控制符...",输入参数,输入参数....);
一次输入多个数值。(空格和回车输入下一个。)
/* 2019年7月23日00:18:38 功能:Scanf的多个输入。 */ #include <stdio.h> int main(void) { int i, j, k; scanf("%d%d%d",&i,&j,&k); printf("i = %d, j = %d, k = %d",i,j,k); return 0; }
注意:
1、使用scanf之前最好先用printf提示用户输入规则。
2、scanf中尽量不要出现非输入控制符,尤其不要用\n.
3、应该编写代码对用户的非法输入做适当处理(见下)。
/* 2019年7月23日00:18:38 功能:Scanf多次输入数据,如何防止垃圾数据会影响下次收入。 */ #include <stdio.h> int main(void) { int i; char ch; // 第一次输入数据。 printf("i = "); scanf("%d",&i); printf("i = %d\n",i); //防止上次输入有残留数据影响下次输入。 while((ch=getchar()) != '\n') continue; //第二种,含有输入控制符。 int j; scanf("%d",&j); printf("%d\n",j); return 0; }