jmfs.net
当前位置:首页>>关于若变量已正确定义,则以下语句的输出结果是 s=32; s...的资料>>

若变量已正确定义,则以下语句的输出结果是 s=32; s...

第一级的switch(x)中的 case 0后面没有break 因此 执行完case 0之后(实际输出了*),会进入case 1分支,由于switch(z)没有匹配,执行default,输出#

程序段的输出结果为s=5;因为不满足s=0的条件只运行了一次循环

代码有缺失. 答案为 *# void main() { int x,y,z; x=0;y=2;z=3; switch(x)// 缺少代码,这里x=0,所以执行case0. { case 0: switch(y==2) // 这里y=2,所以y==2的判断结果是真,即1.所以执行case1,输出* { case 1:printf("*");break;//由于有break所...

在for(i=1;i

这是一个条件判断语句。 首先判断X的值, 如果X=0,再判断Y是否等于2,等于,输出“*”;不等于,输出“%”。 如果X=1,再判断Z,Z=1,输出“$”,Z=2输出“*”,默认输出“#”。 本例中X=0,所以我认为结果应该是“*”,而不是“*#”。

数组能整个赋值吗?我没见过,mark是数组型,应该不能赋值吧…

B,A选项中a还没赋值所以不能比较,C选项中a++是把a自身先加1在赋值,所以同样不行,D选项中a,i应该都是int类型,不需要强制转换

ch=getchar()=='A' 这个是运算符优先级问题, == 高于=, 所以 先运算getchar()=='A',如果输入的不是A,则返回0,否则返回1, 所以ch不是等一1就是等于0; 如果你想使得ch的值是你输入的字母,你应该把前面用括号括起来:while ((ch=getchar())...

while(变量);这是一个判断语句,他的意思是若变量为真,则循环,所以相当于while(变量!=0) while(i++) 你可以将他理解成 while(i++ != 0)

s=s+i就是不对的。S的值 每次都变,i的值也变,根本不可能做正确的计算 初始 s=1 i=1 第一次后 s=1+1=2 i=2; 第二后 s=2+2=4 i=3; 第三次 s=4+3=7 i=4

网站首页 | 网站地图
All rights reserved Powered by www.jmfs.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com