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