c 语言初级题目,请纠错

来源:百度知道 编辑:UC知道 时间:2024/06/08 12:03:56
有如下程序 main() { int a=2,b=-1,c=2; if(a < b) if(b<0) c=0; else c++ printf("%d\n",c); } 该程序的输出结果是
A、 B、 C、 D、 F、
A、0
B、1
C、2
D、3
F、
答案是b吗???

若a、 b、c1、c2、x、y、均是整型变量,正确的switch语句是
A、 B、 C、 D、 F、
A、switch(a+b); {case 1:y=a+b;break; case 0:y=a-b;break; case 3:y=b-a,break; }
B、switch(a*a+b*b) {case 3: case 1:y=a+b;break; }
C、switch a {case c1:y=a-b;break; case c2:y=a*d;break; default:x=a+b; }
D、switch(a-b) {default:y=a*b;break; case 4:x=a+b;break; case 10:y=a-b;break; }

1. c++; 加个分号
刚才看错了。这样比较好看
main()
{ int a=2,b=-1,c=2;
if(a < b) // a<b 为假,所以直接执行printf
if(b<0) c=0;
else c++;
printf("%d\n",c);
}
所以 输出 2
2. B

第一题应该是2;第二题应该是B

要在“C++”的后面加分号,输出为2

输出为2.第一个if语句判断a是否小于b,但明显不会,所以转到else里,执行c++,只是第一次执行,所以c应该是原值,下次才会是2+1。

1.C
else是在没有括号的情况下自动和离它最近的if配对
2.B