20.設(shè)整型變量 a、b、c均為2,表達式 a+++b+++c++ 的結(jié)果是( )
A.6
B.9
C.8
D.表達式出錯
【解析】與上一小題解答的理由相同,表達式a+++b+++c++被系統(tǒng)理解成:((a++)+(b++))+c++)。表達式“變量++”的值是變量的原來值,所以在變量a、b.c均為2的前題下,執(zhí)行上述表達式,得到結(jié)果為6。所以解答是A。
【參考答案】A
21.若已定義 x和 y為double類型,則表達式: x=l, y=x+3/2結(jié)果是( )
A.l
B.2
C.2.0
D.2.5
【解析】由于變量x和y都是double類型,表達式 x=l, y=x+3/2是先計算 x=1,由于 1是整型的,x是double類型的,該計算先將整數(shù)1轉(zhuǎn)換成double類型的1.0,并將1.0賦給變量x。計算 y=X+3/2是先求 3/2的值,因是兩整數(shù)相除,結(jié)果是整型值 1,然后在計算 X+1時,也先將 1轉(zhuǎn)換成 1.0,然后求得 X+l的值為2.0,最后將該值賦給變量 y,并得到整個表達式的值為2.0.所以解答是C。
【參考答案】C
22.設(shè)a為整型變量,下列C表達式中,不能表達數(shù)學關(guān)系式:10
A.10
B.a==11||a==12|| a==13|| a==14
C.a》10&&a《15
D.!(a《=10)&&!(a》=15)
【解析】數(shù)學關(guān)系式 1010&& a《15,或!(a《=10)&&!(a》=15),或a==11||a==12 || a==13||a==14等。若寫成10
【參考答案】A
23.下列表達式中,正確的C賦值表達式是( )
A.a=7+b+C=a+7
B. C=7+b++=a+7
C.a=(7+b, b++, a+7)
D. a= 7+b, c=a+7
【解析】賦值運算符是運算符之一,賦值運算也可以出現(xiàn)在一般表達式中。賦值運算時,出現(xiàn)在賦值運算符左邊的表達式應(yīng)該是引用一個存儲對象,例如變量。不可以是一個數(shù)值計算表達式。如表達式a=7+b+c=a+7因算術(shù)運算符比賦值運算符的優(yōu)先級高,要把a+7的結(jié)果賦給7+b+c,這是錯誤的。同樣理由,表達式a= 7+b++=a+7也是錯誤的。而表達式a=(7+b,b++,a+7)就是正確的賦值表達式,它是先計算賦值號左邊的括號內(nèi)的表達式,括號表達式內(nèi)是一個逗號表達式,遠號表達式要求順序逐一計算各子表達式,并以最后一個子表達式的值作為遠號表達式的結(jié)果,最后將該結(jié)果賦給變量a。而表達式a=7+b,c=a+7則不是一個賦值表達式,而是一個逗號表達式,它由兩個賦值子表達式組成。所以解答是C。
【參考答案】C
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |