永利皇宫官网网址

凌阳教育专注嵌入式教育14年,良心教育,有担当,有诚信,值得信赖的教育品牌,欢迎访问官网http://www.sunplusedu.com

整数输入

上一篇 / 下一篇  2016-04-08 17:37:47

用于读取一个整数的字段说明符为:

% w d

百分号表明后面跟的使转换说明符。W是一个整数,指定要读取的数字的字段度,而d为数据类型字符,表明要读取的数据为整形数据。请看下面示例:

scanf("%2d %5d",&num1,&num2);

输入数据为

50 31426

50赋给了num1,而31426赋给了num2.假设输入的数据为:

31426 50

那么变量num1被赋给的值是31,而变量num2被赋给的值是426.50未被读取,但它可赋给下一个scanf函数调用中的第一个参数。如果只是使用字段类型说明符,而无字段宽度说明符,这种错误就可以避免。也就是说,使用语句:

scanf("%d %d",&num1,&num2);

可以正确读取数据:

31426     50

此时就可以正确地将值31426赋给num1,而50赋给num2了。

输入数据的各项必须用空格、制表符或换行符隔开。不能用标点符号来分隔。当scanf函数从输入数据行读取数据时,将忽略所有这些空白字符。

如果我们输入的是浮点数而不是整数时,小数部分将被截除!而且,scanf函数还会忽略掉多余的输入。

scanf函数读取某个特定的值时,如果指定了字段的宽度,只要读取的字符数够了,或者读取时遇到了一个不合法的字符时,读取工作将被中止。当要读取的是整数时,如果输入的是合法的字符,那么久把这些字符看做是有符号的数字。

通过字段的宽度说明符位置上指定*,就可以跳过该输入字段。例如,语句:

scanf("%d %*d %d",&a,&b);

此时,如果输入如下数据:

123 456 789

那么,123赋给a456被忽略,789赋给b

凌阳教育,全国唯一一家原厂式嵌入式培训机构,专业从事嵌入式人才培训13年,最近新开课程信息安全工程师培训,想了解更多嵌入式资料下载或者是凌阳教育的动态,请访问凌阳教育官网www.sunplusedu.com


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar