有以下程序 #include mare() { int x=1,y=2,z=3; if(x>y) if
有以下程序 #include <stdio.h> mare() { int x=1,y=2,z=3; if(x>y) if(y<z) printf("%d",++z); else printf("%d",++y); printf("%d\n",x++); } 程序的運行結果是______。
A.331
B.41
C.2
D.1
正確答案:D解析:本題考查的是if語句的嵌套。C語言規(guī)定else總是與它上面的最近的且不帶else的if配對,所以本題else與if(yz)配對,即為內嵌if。在程序執(zhí)行時,先判斷if(x>y)的條件表達式x>y,即1>2,不成立,所以不執(zhí)行內嵌if,直接執(zhí)行“printf("%d",x++);”語句。由于x++表示在使用后再將x加1,所以輸出1。
詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域專業(yè)人士。