有以下程序main(){ int a=3,b=4,c=5,d=2;if(a>b)if(b>c)printf("%d",d++ +1);elsepri
有以下程序
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);
}
程序運(yùn)行后的輸出結(jié)果是
A.2
B.3
C.43
D.44
正確答案:A解析:因?yàn)榍短?if...else...結(jié)構(gòu)中,else總是與最近一個(gè)訂配對(duì),所以此程序可以等價(jià)轉(zhuǎn)化為以下 代碼: if(a>b) {if (b>C. {printf (“%d”,(1+++1); elsc {Prantf(“%d”,++d+1); } printf(“%d”,d); 最外層一個(gè)判斷語(yǔ)句沒(méi)有執(zhí)行,所以,它所包含的判斷語(yǔ)句也沒(méi)有執(zhí)行,僅執(zhí)行了最后一個(gè)printf語(yǔ)句,結(jié)果為2。
詞條內(nèi)容僅供參考,如果您需要解決具體問(wèn)題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。