(16)D
【解析】 在ANSI標準中,long、int和short分別占用4、2和2個字節(jié)。但實際上對于某些C編譯系統(tǒng),int和short都占用4個字節(jié),所以說各種類型數(shù)據(jù)占用內存大小是由選擇何種C編譯系統(tǒng)決定的。
(17)B
【解析】 本題考查通過scanf函數(shù)輸入數(shù)據(jù)時的格式控制問題。變量j的格式控制為"%2d",即只接收輸入數(shù)據(jù)的前兩位,從第三位開始直到空格之間的輸入都會被保存到變量y中,因為y為浮點型數(shù)據(jù),所以輸出結果為選項B)。
(18)B
【解析】 對于do…while循環(huán),程序先執(zhí)行一次循環(huán)體,再判斷循環(huán)是否繼續(xù)。本題先輸出一次i的值"0,",再接著判斷表達式i++的值,其值為0,所以循環(huán)結束。此時變量i的值經過自加已經變?yōu)?,程序再次輸出i的值"1"。
(19)D
【解析】 if…else語句的執(zhí)行過程如下,首先計算if后面一對圓括號內表達式的值,若表達式的值為非0,執(zhí)行if子句,然后跳過else子句,去執(zhí)行if語句后的下一條語句;若表達式的值為0,跳過if子句,去執(zhí)行else子句,接著去執(zhí)行if語句后的下一條語句。C語言的語法規(guī)定,else子句總是與前面最近的不帶else的if匹配,與書寫格式無關,本題目的后一個if-else相當于嵌套在第一個if子句里,相當于x
(20)A
【解析】 本題主要考查switch語句的使用方法。switch語句的執(zhí)行過程為:進入switch結構后,對條件表達式進行運算,然后從上至下去找與條件表達式值相匹配的case,以此作為入口,執(zhí)行switch結構中后面的各語句,直到遇到break語句,則跳出switch語句,如果各case都不匹配時,則執(zhí)行default后面的語句。
(21)A
【解析】 本題考查用于多分支選擇的switch語句, 其一般形式為:
switch(表達式)
{
case常量表達式1: 語句1;
case常量表達式2: 語句2;
…
case常量表達式n: 語句n;
default : 語句n+1;
}
其語義是:計算表達式的值,并逐個與其后的常量表達式值進行比較,當表達式的值與某個常量表達式的值相等時,即執(zhí)行其后的語句,然后不再進行判斷,繼續(xù)執(zhí)行后面所有 case后的語句;如表達式的值與所有case后的常量表達式均不相等時,則執(zhí)行default后的語句。
(22)D
【解析】 在C語言中,定義一維數(shù)組的語句一般形式如下:
類型名 數(shù)組名[常量表達式];
一維數(shù)組的引用形式為:數(shù)組名[下標表達式]。count表示能被2整除或被5整除的個數(shù),i則計算有多少個數(shù)組元素。
(23)D
【解析】 在C語言中,數(shù)組元素下標是從0開始的;指針變量p指向數(shù)組的首地址。for循環(huán)語句中,指針變量p始終指向數(shù)組的首地址,因而執(zhí)行循環(huán)賦值語句后數(shù)組各元素的值均變?yōu)?。
(24)B
【解析】 本題考查循環(huán)語句的嵌套以及條件的判斷問題。在程序中,內層循環(huán)判斷條件為"j<=i",而j的初值為3,故當i的值為1和2時,內層循環(huán)體都不會被執(zhí)行。只有當i和j都等于3時才會執(zhí)行一次。m的值為55對3取模,計算結果為1。
(25)C
【解析】 在C語言中,字符型數(shù)據(jù)在內存中的存儲形式是ASCII碼值。當需要以整型格式輸出字符時,輸出的也是ASCII碼值。字符'A'和'D'的ASCII碼值分別為65和68。
(26)D
【解析】 本題中直接使用指針變量k,但在使用時要注意對k的指針運算。此外,一開始應知道*k的值為數(shù)組中的某一下標值,即*k=0,本函數(shù)的功能是找出數(shù)組中的最大元素的位置及最大元素的值。
(27)B
【解析】 argc中存入的是命令行中字符串的個數(shù)。argv是一個指向字符型的指針數(shù)組的指針。
(28)C
【解析】 p=&a[3]將指針指向數(shù)組a的第4個元素,p[5]指向數(shù)組a的第9個元素,而a[8]=9,所以b=9。
(29)C
【解析】 函數(shù)形參和實參分別占用不同的內存單元,改變形參的值不會影響對應實參的值,選項A)正確。指針類型的函數(shù)可以返回地址值,選項B)正確。在文件stdio.h中,NULL被定義為void 型的指針,選項D)也正確。指針變量的值只能是存儲單元地址,而不能是一個整數(shù),選項C)錯誤。
相關推薦:2010年9月計算機等級考試二級C語言考前預測題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |