中易网

C语言基础问题, while (scanf("%1f%d",&x,&y) ==2) ==2是什么意思?和==1一样吗?为什么要==2?

答案:1  悬赏:40  
解决时间 2021-02-18 18:28
C语言基础问题, while (scanf("%1f%d",&x,&y) ==2) ==2是什么意思?和==1一样吗?为什么要==2?
最佳答案
scanf 函数是有返回值的,它的返回值可以分成三种情况
1、正整数,表示正确输入参数的个数。例如执行 scanf("%d %d", &a, &b);
如果用户输入"3 4",可以正确输入,返回2(正确输入了两个变量);
如果用户输入"3,4",可以正确输入a,无法输入b,返回1(正确输入了一个变量)。
2、返回0,表示用户的输入不匹配,无法正确输入任何值。如上例,用户如果输入",3 4",返回0。
3、返回EOF,这是在stdio.h里面定义的常量(通常值为-1),表示输入流已经结束。在Windows下,用户按下CTRL+Z(会看到一个^Z字符)再按下回车(可能需要重复2次),就表示输入结束;Linux/Unix下使用CTRL+D表示输入结束。

while是一个循环,while后面的括号里的内容,表示判断内容,如果判断成立,则执行while的循环体。
while (scanf("%1f%d",&x,&y) ==2)的判断条件就是scanf("%1f%d",&x,&y) ==2,就是说scanf的返回值是2,2和2相等,判断条件成立,为真,执行循环。

如有疑问请您追问。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
估价:二手长安CM8
ipad4 16G的 ios7越狱后下载了软件,关机重启
我应聘的暖通设计,后来新来了一个女的,也是
二保和首保间隔最多半年吗?
彩艺港澳护照摄影地址有知道的么?有点事想过
相信自己而不附和权威意见的事例
我的卡是建行的,身边只有农行,可以用建行的
2010年高职院校单独招生毕业生的工作去向是支
sin80度怎么求用什么公式?
在印尼如何拨打中国手机
8·童装折扣中心(竹辉店)地址在哪,我要去那
根号3加根号5和根号3乘根号5哪个大,为什么
这个带着猫帽子的二次元男生是是谁
谁有grapher4.0的安装序列号?
聘用股东的证明怎么写?
推荐资讯
印媒抱怨中国老是小瞧印度,中国与印度的关系
求蒋牧童小说集合百度云
我1991年08月27号(农历七月十八)晚上七点半
苏州名可姿婚纱礼服厂地址在什么地方,想过去
学会施舍作文600字,快
结转销售成本时金额要怎么计算
我今年刚买了南京怡康新寓12幢的房子,入住后
余姚高铁站办临时身份证明需要提供什么条件?
梦见驾照被别人弄坏了了
河南新乡长垣欧洲小镇三期附近有没有修联想电
The door swings open at 5:30 sharp这句话怎
鸭池田地址在哪,我要去那里办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?