黑马程序员技术交流社区

标题: 关于scanf函数的分隔符 [打印本页]

作者: 王海江1    时间: 2014-6-2 15:00
标题: 关于scanf函数的分隔符
本帖最后由 王海江1 于 2014-6-13 22:19 编辑

例1:scanf("%d%d",&a,&b);
例2:scanf("%d,%d",&a,&b);
请问:例1和例2哪个对??

我看过一些资料是这样说的:输入数据时,在两个数据之间以一个或多个空格间隔,也可以用回车键、跳格键tab。。。。。

还看过一些资料是这样说的:用“%d%d%d”格式输入时,不能用逗号作为两个数据间的分隔符。

求详解。。。。。。。


作者: chain    时间: 2014-6-8 01:52
例1键盘输入时需要连续输入,例2需要输入逗号','
作者: 王海江1    时间: 2014-6-13 22:18
我验证了,得到的结果是:
scanf("%d,%d",&a,&b);     输入的两个整数必须用逗号隔开,最后按enter键
scanf("%d%d",&a,&b);      输入的两个整数必须用空格、tab键、回车键(三选一)隔开,最后按enter键
作者: 冯大卫    时间: 2014-9-2 00:28
楼上正解
作者: xizhiqiang    时间: 2014-9-21 15:13
scanf()函数在接受数据的时候要去前面的一一对应,如果是整型数据的话,在接受数据的时候可以再中间加个空格,如果是接受字符数据的话,最好是在前面的数据占位符之间加个空格
作者: xizhiqiang    时间: 2014-9-21 15:15
例如 scanf("%d%d",,&a,&b);//接受两个整型数据
scanf("%c %c',&a,&b);//在接受两个字符型数据的时候可以在两个字符之间加个空格或者不加都可以
作者: 736010695    时间: 2014-10-15 13:33
王海江1 发表于 2014-6-13 22:18
我验证了,得到的结果是:
scanf("%d,%d",&a,&b);     输入的两个整数必须用逗号隔开,最后按enter键
scanf ...

实践实践验真理的唯一标准
作者: sfm    时间: 2014-11-10 10:50
其实scanf里不仅可以用逗号,只要你可以保证输入时与scanf("%d %d")两个%d中间的符号一致就可以了。
例如scanf("%d.%d"),那么你在输入的时候就可以先输入一个整数,然后再输入.接着输出下一个整数。都是可以的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2