2.2 填充題
1.在內(nèi)存中,存儲字符串“X”要占用______個字節(jié),存儲字符’X’要占用_____個字節(jié)。
【解】計算機存儲一個字符用1個字節(jié),存儲字符串時,每個字符要占用1個字節(jié),另在字符串的有效字符之后存儲1個字符串的結(jié)束標(biāo)記符。所以存儲字符率“X’要占用2個字節(jié),存儲字符’X’只要1個字節(jié)。
2.在C程序中,判邏輯值時,用_____表示邏輯值“真”,又用_____表示邏輯值‘假”。在求邏輯值時,用_____表示邏輯表達式值為“真”,又用_____表示邏輯表達式值為“假”。
【解】在C程序中,判邏輯值時,用非0值表示真;而判邏輯值時,用值0表示假。但邏輯表達式計算結(jié)果,邏輯表達式值為真是用1表示的,而邏輯表達式的值為假,則用0表示。
3.定義符號常量的一般形式是_____。
【解】定義符號常量用預(yù)處理命令的宏定義,其定義的一般形式是:
#define符號常量名 常量
4.在函數(shù)內(nèi),說明變量時,若省略存儲類型符,系統(tǒng)默認(rèn)其為_____存儲類別,該存儲類別的類型符為_____。
【解】在函數(shù)內(nèi),說明變量時,若省略存儲類型符,系統(tǒng)就默認(rèn)其為自動存儲類別,該存儲類別用auto標(biāo)識。
5.無符號基本整型的數(shù)據(jù)類型符為_,雙精度實型數(shù)據(jù)類型符為_,字符型數(shù)據(jù)類型符為,。
【解】無符號的基本整型的類型符為unsigned int,或簡寫成unsigned。雙精度實型數(shù)據(jù)類型符為double,字符型數(shù)據(jù)類型符為char。
6.定義指定數(shù)據(jù)類型的變量時,較完整的一般形式是_。
【解】要指定變量的存儲類型,定義指定類型的變量,其一般形式是:存儲類型符數(shù)據(jù)類型符變量名1,變量名2,……;
7.設(shè)有下列運算符:<<、+、++、&&、<=,其中優(yōu)先級最高的是_____,優(yōu)先級最低的是_____.
【解】對運算符<<、+、++、&&、<=,按它們的優(yōu)先級自高到低的順序排列為:++、+、<<、<=、&&所以,優(yōu)先級最高的是++,優(yōu)先
級最低的是&&。
8.設(shè)二進制數(shù)A是0A101111,若想通過異或運算 A^B使 A的高4位取反,低4位不變,則二進制數(shù)B應(yīng)______。
【解】按位加運算的一個重要應(yīng)用是讓某個整型變量的二進位位串信息的某些位信息反向,0變成1,而1變成0. 這只要設(shè)計這樣一個位串信息,讓要變反的位為1,不要改變的位為0,用這個位串信息與整型變量按位加就能得到希望的結(jié)果。要使字節(jié)的高4位取反,低4位不變,則需要位串信息是11110000,寫成八進制數(shù)是0360,寫成十六進制數(shù)為0xF0。
9.設(shè)a=3, b= 2,C=l,則 C>b的值為______。,a> b> C的值為______。
【解】因a的值為3,b的值是2,條件a>h為真,其值為1。表達式a>b>c的求值順序是計算a>b,結(jié)果為1,接著計算1>c,因c的值為1,條件1>c為假,結(jié)果為0。
10.老已知a=10,b=20,則表達式!a<b的值為_____。
【解】計算表達式!a<b,先計算!a ,因a的值為1O,!a 的值為0。關(guān)系表達式0<20為真,所以表達式!a<b的值為1。
11.設(shè)X和y均為 int型變量,且X=l,y=2,則表達式 1.0+x/y的值為_____。
【解】計算表達式 1.0+x/y,先求 x/y,因 x和 y是整型變量,其中的除運算是整除, 1/2的結(jié)果為0。接著計算1.0+0,計算時,先將右分量轉(zhuǎn)換成0.0,最后得到結(jié)果1.0。
12.設(shè)整型變量 X、y、Z均為 5:
①執(zhí)"x-=y(tǒng)-x"后,x=__________,
②執(zhí)行"x%=y(tǒng)+z"后,x_____________.
③執(zhí)行“X=(y>Z)?X+2:X-2,3,2后,X=____________。
【解】在變量x、y、z的值均為5的情況下,計算各表達式。由于表達式x-=y(tǒng)-z等價于表達式X=X-(y-Z),所以計算后X的值為5。表達式X%=y+Z等價于表達式X=X%(y+z),所以計算后x的值也為5。表達式x=(y>z)? x+2: x-2,3,2的計算過程用圓括號描述其計算順序是:
((X=(y>Z)?X+2:X-2),3),2
即這是一個逗號運算表達式,由一個賦值表達式和兩個數(shù)值構(gòu)成,逗號表達式要求順序求各子表達式的值。表達式X=(y>Z)? X+2:X-2的計算是先求賦值號右邊的條件表達式,因條件(y>z)為假,求出X-2的值為3,將該值賦給變量X,使X的值為3。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |