while (scanf("%d %d",&a,&b)==2 && (a||b))什么意思

如题所述

首先scanf返回的是输入变量的个数。
如果n=scanf(“%d %d”,&a,&b)如果两个变量a、b输入成功n=2;
a||b的意思是a“或”b,逻辑运算符||进行或运算结果非0即1,如果a=b=0,
a||b=0,否则a||b=1

while (scanf("%d %d",&a,&b)==2 && (a||b))
意思是,如果scanf输入两个数成功即==2,&&(并且)a||b的值为真(即a||b=1)则,while()括号内的值为真,即为1。然后执行while循环体内的语句。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-06
scanf("%d%d",&a,&b)
如果a和b都被成功读入,那么scanf的返回值就是2
如果只有a被成功读入,返回值为1
如果a和b都未被成功读入,返回值为0
如果遇到错误或遇到end of file,返回值为EOF本回答被提问者采纳

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网