若有以下程序 #include main() { int a=1,b=2,c=3,d=4, r=0; if (a!=1) ; else r=1; if (b==2) r+=2; else; if (c!=3) r+=3; else; if (d==4)

admin2019-08-10  48

问题 若有以下程序
#include
main()
{ int a=1,b=2,c=3,d=4, r=0;
if (a!=1) ; else r=1;
if (b==2) r+=2;
else; if (c!=3) r+=3;
else; if (d==4) r+=4;
printf("%d\n", r);
}
则程序的输出结果是( )。

选项 A、7
B、10
C、6
D、3

答案A

解析 else总是与前面距离它最近的且未曾配对的if语句配对。"if (a!=1); else r=1;"执行的是空语句";"。"if (b==2) r+=2; else;"执行的是语句"r+=2",r值为2。"if (c!=3) r+=3;else;"执行的是空语句";"。"if (d==4) r+=4;"执行语句"r+=4",计算后r的值为7,输出结果为选项A)。
转载请注明原文地址:https://jikaoti.com/ti/C1f0FFFM
0

最新回复(0)