格式化输入
scanf(“%d”,&a);
修饰符:
%d后面不能加分隔符\n \n是触发读取的条件
%h 用于d o x前面,指定输入为short型整数
l 用于d o x前面,指定输入为long型实数,用于e f前,指定输入为double型实数
m用于指定输入的数据宽度,遇到空格或者非法字符不读
.n 对实数用于指定小数位数,对字符串用于指定实际输出位数
-用于指定左对齐,否则默认右对齐
0在输出数值的左边空位补0
#在八进制和十六进制前面显示0和0x
*抑制符号,用于指定输入项但不赋值给变量
格式输入:
%c 读取一个字符,多次读取字符容易受到空格污染,可用fflush(stdin);刷新掉缓存区或者使用getchar();清空掉回车符号
%d 读取一个整型数据
%o 读取一个八进制整数
%x%X读取十六进制整数
%s 读入一个字符串,遇空格结束,所以不能用来读取空格,读取空格需要使用gets();
scanf如果一个读取错误将会舍弃后面的数据
格式化输出
因为在linux中一切皆文件,当使用printf输出时候,首先是将数据输出到 stdout中,只有当程序正常结束,和缓存区满,以及fflush(stdout)三种情况才会将stdout中的数据输出到屏幕中,stdout的大小为1024byte
printf(“%d”,a);
格式化输出:
%d %i 输出十进制整数
%x X 输出十六进制无符号整数,若是0则省略0x
%o 用于输出八进制无符号整数
%u 不带符号的十进制整数
%c 用于输出单一字符
%s 用于输出字符串
%e%E 输出指数形式的小数
%f 输出浮点型数据
%lf输出double型数据
%%输出%本身