有以下程序 main() { int x=1, y=0; if (!x) y++;

有以下程序 main() { int x=1, y=0; if (!x) y++;,第1张

结果是0;

x=1,!x为false 所以再判断x==0也不成立故y=0

else if (x==0)

if (x) y+=2

else y+=3

else if (x==0)

{

if (x) y+=2

else y+=3

}

是一样的意思

输出结果是n=4。

看这个循环的执行:

for(i=2i<5i++)

{ do

{ if(i%3) continue

n++

} while(!i)

n++

}

i=2:i%3(i除以3取余为2),if条件成立,continue执行,后续n++不执行,直接判断while(!i),i不为0,!i为假,退出do/while循环,执行while后面的n++,n=1,再执行下一次for循环

i=3:i%3(i除以3取余为0),if条件不成立,n++执行,n=2。再判断while(!i),i不为0,!i为假,退出do/while循环,执行while后面的n++,n=3,再执行下一次for循环

i=4:i%3(i除以3取余为1),if条件成立,continue执行,后续n++不执行,直接判断while(!i),i不为0,!i为假,退出do/while循环,执行while后面的n++,n=4,再执行下一次for循环

最后,n=4。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7839912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存