為大家收集整理了《2012軟考程序員第六套考前練習(xí)試題及答案解析》供大家參考,希望對大家有所幫助?。?!
76.設(shè)有定義“int x=8,y,z;”,則執(zhí)行“y=z=x++,x=y==z;”后,變量x值是( )
A.0
B.1
C.8
D.9
【解析】這是逗號表達(dá)式組成的語句,要先計算“y=z=x++”,結(jié)果變量y和z的值均為8。注意++是后綴運(yùn)算符,同時x等于9。再計算“x=y==z”,由于“==”優(yōu)先于“=”,所以x的值等于“y==z”,而y和z值相等,所以運(yùn)算結(jié)果為1,即x值為1。本題答案應(yīng)選B。
【參考答案】 B
77.設(shè)有“int a=1,b=1;”,“printf("%d,%d",(a++,--b),b-1);”的輸出是( )
A.1,-1
B.1,0
C.0,-1
D.0,0
【解析】printf()函數(shù)的功能是自右向左依次計算表達(dá)式的值,然后再按照自左向右的順序輸出各個表達(dá)式的值,所以題目中輸出語句執(zhí)行時,是依次計算下列兩個表達(dá)式的值:
b-1 結(jié)果為0,注意變量b值不變;
(a++,--b)這是逗號表達(dá)式,先計算a++,結(jié)果變量a值為2;
再計算--b,結(jié)果變量b值為0;
整個逗號表達(dá)式的值就是--b的值,為0。
按照自左向右的順序輸出(a++,--b)和b-1的值,依次為0,0。本題答案應(yīng)選D。
【參考答案】D
78.設(shè)有定義語句“char s[]="123";”,則表達(dá)式“s[3]”的值是 ( )
A.’1’
B.’3’
C.0
D.語法出錯
【解析】字符數(shù)組s在定義時省略了數(shù)組長度,表示給每個數(shù)組元素均賦了初值。對本題來說,數(shù)組的長度為4;數(shù)組元素的值依次為:S[0]為'1'。S[1」為'2'。S[2]為'3'、S[3]為字符率結(jié)束標(biāo)記符'\0',所以“s[3]”的值是'\0'。注意,這個字符的 ASCII代碼值是整數(shù) 0,所以本題答案應(yīng)選C。
【參考答案】 C
76.設(shè)有定義“int x=8,y,z;”,則執(zhí)行“y=z=x++,x=y==z;”后,變量x值是( )
A.0
B.1
C.8
D.9
【解析】這是逗號表達(dá)式組成的語句,要先計算“y=z=x++”,結(jié)果變量y和z的值均為8。注意++是后綴運(yùn)算符,同時x等于9。再計算“x=y==z”,由于“==”優(yōu)先于“=”,所以x的值等于“y==z”,而y和z值相等,所以運(yùn)算結(jié)果為1,即x值為1。本題答案應(yīng)選B。
【參考答案】 B
77.設(shè)有“int a=1,b=1;”,“printf("%d,%d",(a++,--b),b-1);”的輸出是( )
A.1,-1
B.1,0
C.0,-1
D.0,0
【解析】printf()函數(shù)的功能是自右向左依次計算表達(dá)式的值,然后再按照自左向右的順序輸出各個表達(dá)式的值,所以題目中輸出語句執(zhí)行時,是依次計算下列兩個表達(dá)式的值:
b-1 結(jié)果為0,注意變量b值不變;
(a++,--b)這是逗號表達(dá)式,先計算a++,結(jié)果變量a值為2;
再計算--b,結(jié)果變量b值為0;
整個逗號表達(dá)式的值就是--b的值,為0。
按照自左向右的順序輸出(a++,--b)和b-1的值,依次為0,0。本題答案應(yīng)選D。
【參考答案】D
78.設(shè)有定義語句“char s[]="123";”,則表達(dá)式“s[3]”的值是 ( )
A.’1’
B.’3’
C.0
D.語法出錯
【解析】字符數(shù)組s在定義時省略了數(shù)組長度,表示給每個數(shù)組元素均賦了初值。對本題來說,數(shù)組的長度為4;數(shù)組元素的值依次為:S[0]為'1'。S[1」為'2'。S[2]為'3'、S[3]為字符率結(jié)束標(biāo)記符'\0',所以“s[3]”的值是'\0'。注意,這個字符的 ASCII代碼值是整數(shù) 0,所以本題答案應(yīng)選C。
【參考答案】 C