问题 单项选择题

有以下程序:
#include < stdio. h >
main ( )
int a=3,b=4,c=5,d=2;
if(a>b)
if(b>c)printf("%d",d++ +1);
else printf( "% d", + + d + 1 );
printf( "% d \n" ,d);
程序运行后的输出结果是( )。

A.2

B.3

C.43

D.44

答案

参考答案:A

解析: C语言规定:else总是与离自己前面最近的if配对,程序中if(a>b)不成立,因此执行prinff("%d\n",d);,输出结果为2。

问答题 案例分析题
单项选择题