一个c程题.假定所有变量均已正确定义,则下列程序段运行后x的值是(B ).a=b=c=0; x=35;if(!a) x--; else if(b); if(c) x=3; else x=4;A.34 B.4 C.35 D.3为什么选b?a不就是真吗?因为a=0,0不就是真吗?
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/31 10:07:03
![一个c程题.假定所有变量均已正确定义,则下列程序段运行后x的值是(B ).a=b=c=0; x=35;if(!a) x--; else if(b); if(c) x=3; else x=4;A.34 B.4 C.35 D.3为什么选b?a不就是真吗?因为a=0,0不就是真吗?](/uploads/image/z/12186852-60-2.jpg?t=%E4%B8%80%E4%B8%AAc%E7%A8%8B%E9%A2%98.%E5%81%87%E5%AE%9A%E6%89%80%E6%9C%89%E5%8F%98%E9%87%8F%E5%9D%87%E5%B7%B2%E6%AD%A3%E7%A1%AE%E5%AE%9A%E4%B9%89%2C%E5%88%99%E4%B8%8B%E5%88%97%E7%A8%8B%E5%BA%8F%E6%AE%B5%E8%BF%90%E8%A1%8C%E5%90%8Ex%E7%9A%84%E5%80%BC%E6%98%AF%EF%BC%88B+%EF%BC%89.a%3Db%3Dc%3D0%3B+x%3D35%3Bif%28%21a%29+x--%3B+else+if%28b%29%3B+if%28c%29+x%3D3%3B+else+x%3D4%3BA.34+B.4+C.35+D.3%E4%B8%BA%E4%BB%80%E4%B9%88%E9%80%89b%3Fa%E4%B8%8D%E5%B0%B1%E6%98%AF%E7%9C%9F%E5%90%97%3F%E5%9B%A0%E4%B8%BAa%3D0%2C0%E4%B8%8D%E5%B0%B1%E6%98%AF%E7%9C%9F%E5%90%97%3F)
一个c程题.假定所有变量均已正确定义,则下列程序段运行后x的值是(B ).a=b=c=0; x=35;if(!a) x--; else if(b); if(c) x=3; else x=4;A.34 B.4 C.35 D.3为什么选b?a不就是真吗?因为a=0,0不就是真吗?
一个c程题
.假定所有变量均已正确定义,则下列程序段运行后x的值是(B ).
a=b=c=0; x=35;
if(!a) x--;
else if(b);
if(c) x=3;
else x=4;
A.34 B.4 C.35 D.3
为什么选b?
a不就是真吗?因为a=0,0不就是真吗?
一个c程题.假定所有变量均已正确定义,则下列程序段运行后x的值是(B ).a=b=c=0; x=35;if(!a) x--; else if(b); if(c) x=3; else x=4;A.34 B.4 C.35 D.3为什么选b?a不就是真吗?因为a=0,0不就是真吗?
因为你没有看清程序的结构层次.
这个程序分为三部分:
第一部分:
a=b=c=0; x=35;
第二部分:
if(!a) x--;
else if(b); //这里if(b)后的“;”表示这个if语句中的else结束了,即此if语句结束了.
第三部分:
if(c) x=3;
else x=4;
如果像你说的,程序应该这样写:
a=b=c=0; x=35;
if(!a) x--;
else if(b)
if(c) x=3;
else x=4;
这样就表示后面的if(c)是嵌套在第一个if里面的.
这里的x是先被x--成为34,又被x=4赋值为4的.
所以最后x=4,选择B.
明白了么?