下列程序的運行結果是#include"stdio.h"main(){intx=-9,y=5,z=8;if(x<y)if(y<0)z=0;else z
下列程序的運行結果是 #include"stdio.h" main() { intx=-9,y=5,z=8; if(x<y) if(y<0)z=0; else z+=1; printf("%d\n",z);}
A.6
B.7
C.8
D.9
正確答案:D解析: if…else語句的執(zhí)行過程如下,首先計算if后面一對圓括號內(nèi)表達式的值,若表達式的值為非0,執(zhí)行if子句,然后跳過else子句,去執(zhí)行if語句后的下一條語句;若表達式的值為0,跳過if子句,去執(zhí)行else子句,接著去執(zhí)行if語句后的下一條語句。C語言的語法規(guī)定,else子句總是與前面最近的不帶else的if匹配,與書寫格式無關,本題目的后一個if-else相當于嵌套在第一個if子句里,相當于xy&&y0時,z=0;當xy&&y>=0時,z=2+1。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域?qū)I(yè)人士。