scanf"/>
格式化输入:scanf
scanf(“control strong”,&a,&b,…,&n);
- control string
可以包括字段说明符,空白符,制表符或换行符
常用的scanf格式代码
- h——用于短整数
- l——长整数或双精度
- L——长双精度
1、整数输入
% w d
w:是一个整数,指定要读取的数字的字段宽度
d:数据类型字符:整形
scanf(“%2d %5d”,&num1,&num2);输入数据为 50 31425值50赋给num1,31425赋给num2若输入数据为 31425 50则 num1=31;num2=425;
注:scanf中%d %d之间必须要有空格,若指定了w的长度,w未被读取完,则在输出时显示读取到的数,并把未读到的数当作一个参数赋给下一个scanf函数
- 如果我们输入的不是整数而是浮点数时,小数部分将被截除
- scanf将一直读取数据直到发现有一个空白字符,或者已读取了字符的最大个数,或者检查出了错误,或者到了文件的末尾
- 当查找某一个值的时候,scanf将忽略行的边界,只寻找下一个合适的字符,一行中任何未读的数据项都被认为是下一个scanf函数的输入行
- %[ ]可以用来读取空白字符
- %d的意思是跳过该字段
2、实数输入
实数字段宽度不用指定,只需要用%f来读取实数,且可用十进制小数或指数形式来表示实数
如果读取数字为double类型,则用%lf,同样用%*f可以忽略掉一个字符
3、字符串输入
% w s 或 % w c
- %wc读取字符时,系统一直在等待,直到第w个字符被键入
- 利用说明符%s时,一旦遇到空格,读取工作将停止,空格之后将作为参数赋给下一个scanf函数
- %[c]:c只能是字符,若出现其他符号,立即停止
- %[^c] :^后面的符号不允许出现在输入的字符串之中
4、混合数据类型的输入
scanf("%d %s %c %f",&a,&b,&c,&d);
5、错误输入的检测
scanf在读取数据完成之后,它将返回已成功读取的项数,以此来进行错误性检测
更多推荐
格式化输入:scanf
发布评论