scanf的返回值由后面的参数决定
scanf("%d%d", &a, &b);
如果a和b都被成功读入,那么scanf的返回值就是2
如果只有a被成功读入,返回值为1
如果a和b都未被成功读入,返回值为0
如果遇到错误或遇到end of file,返回值为EOF。
且返回值为int型.
验证:
sign=scanf("%d %d",&a,&b);
printf("%d %dn",a,b);
printf("%dn",sign);
但是输入“a X”的时候 输出的sign为0
什么时候输出EOF? 在stdio.h中 宏定义为-1
按照说明,scanf函数只有在第一个参数为NULL(空指针)的情况下,才可能返回EOF,否则,返回成功格式化并赋值的参数个数(>=0)。
End Of File,在电脑的术语缩写通常为 EOF,在作业系统决定资料源无更多的资料可读取。
当时这个程序就是这么写的:
while(scanf("%d",&n)!=EOF)
{
if(n==0)
{
break;
}
}
终于把那道题给A了... ...
后来看别人的代码 又这么写了
while(scanf("%d",&n)&&n!=0)
后来
whlie(scanf("%d",&n)&&n)
再后来
while(scanf("%d",&n),n)
from:http://raines8231.blog.163.com/blog/static/13623310720122269316911/
相关知识
while((c = getchar() ) != EOF)的循环结束
牛客练习赛69C
请用C语言编出一个简单的宠物管理系统。
Pet BFS
线上宠物领养系统
[HNOI2004]宠物收养场 题解 set
运用C语言设计一个电子宠物程序,实现下列基本功能。
笨笨鸟
hdu1208 Pascal's Travels
c语言链表宠物4节点
网址: ACM之while(scanf(“%d”,&n)!=EOF) https://m.mcbbbk.com/newsview220996.html
上一篇: 宠物用品创意,给爱宠们增加幸福感 |
下一篇: 太有创意了!郭碧婷、向佐和宠物的 |