2007年(春)江蘇二級(jí)C語言筆試試卷參考答案及解析
2007 年(春)筆試試卷參考答案及解析第一部分 計(jì)算機(jī)基礎(chǔ)知識(shí)(1)B )得之。(2)C )(3)B ) 【解析】摩爾定律是指 IC 上可容納的晶體管數(shù)目,約每隔 18 個(gè)月便會(huì)增加一倍,性能 也將
2007 年(春)筆試試卷參考答案及解析
第一部分 計(jì)算機(jī)基礎(chǔ)知識(shí)
(1)B )
得之。
(2)C )
(3)B ) 【解析】摩爾定律是指 IC 上可容納的晶體管數(shù)目,約每隔 18 個(gè)月便會(huì)增加一倍,性能 也將提升一倍。摩爾定律是由英特爾(Intel )名譽(yù)董事長戈登·╰5X爾(Gordon Moore)經(jīng)過長期觀察發(fā)現(xiàn) 【解析】光纖一般在校園網(wǎng)和企業(yè)網(wǎng)中使用,因?yàn)樗俣瓤臁?【解析】二進(jìn)制數(shù)(1010)=十進(jìn)制(10),十六進(jìn)制數(shù)(B2)16=十進(jìn)制(178),所以
188 用八進(jìn)制表示為(274)8。
(4)D ) 【解析】GB2312 中,一個(gè)漢字字符由兩個(gè)字符構(gòu)成,特征是高位大于 127(即十六進(jìn)制 的 7F ),低位不計(jì)。看看字符串:第一個(gè)字符:BO ,明顯大于 7F ,所以這是一個(gè)漢字的高位,與下一個(gè)
字符組成一個(gè)漢字。那么這里就去掉了兩個(gè)字符:BOA1 第三個(gè)字符:57,很明顯,小于 7F ,這是一個(gè)西 文字符。第四個(gè)字符:69,同上,第五個(gè)字符:6E ,同上,第六個(gè)字符:D6,這里又遇到一個(gè)大于 7F 的, 又是一個(gè)漢字的高位,同第一個(gè)字符處理。第八個(gè)字符依次類推,必須從第一個(gè)字符開始,一個(gè)字符一個(gè) 字符的計(jì)算。那就是 4 個(gè)漢字和 3 個(gè)西文字符。
(5)D ) 【解析】現(xiàn)在使用最多的 CPU 有 Intel 和 AMD 。
(6)A ) 【解析】PC 在加電啟動(dòng)過程中會(huì)運(yùn)行 P OST 程序、引導(dǎo)系統(tǒng)、系統(tǒng)自舉程序等。若在
啟動(dòng)過程中,用戶按某一熱鍵(通常是 Del 鍵)則可以啟動(dòng) CMOS 設(shè)置程序。這些程序運(yùn)行的順序是 POST 程序→CMOS 設(shè)置程序→系統(tǒng)自舉程序→引導(dǎo)程序。
(7)B ) 【解析】1394 卡的全稱是 IEEE1394 Interface Card,它是 IEEE 標(biāo)準(zhǔn)化組織制定的一項(xiàng)具 有視頻數(shù)據(jù)傳輸速度的串行接口標(biāo)準(zhǔn)。它支持外接設(shè)備熱插拔,同時(shí)可為外設(shè)提供電源,省去了外設(shè)自帶 的電源、支持同步數(shù)據(jù)傳輸。IEEE1394 接口最初由蘋果公司開發(fā),據(jù)說早期是為了取代并不普及的 SCSI 接口而設(shè)計(jì)的,英文取名為 FIREWIRE 。
(8)C ) 【解析】優(yōu)盤能起到引導(dǎo)操作系統(tǒng)的作用。
(9)C ) 【解析】虛擬存儲(chǔ)器采用的頁面調(diào)度算法有幾種:“先進(jìn)先出”(FIFO )算法、隨機(jī)算法、
近期最少使用算法、最優(yōu)算法。
(10)C ) 【解析】算法是問題求解規(guī)則的一種過程描述,一個(gè)算法有 0 個(gè)或多個(gè)輸入,以刻畫運(yùn)
算對(duì)象的初始情況,所謂 0 個(gè)輸入是指算法本身定除了初始條件,一個(gè)算法有一個(gè)或多個(gè)輸出,以反映對(duì) 輸入數(shù)據(jù)加工后的結(jié)果。沒有輸出的算法是毫無意義的。
(11)D ) 【解析】以太網(wǎng)(IEEE 802.3 標(biāo)準(zhǔn))是最常用的局域網(wǎng)組網(wǎng)方式。
(12)B ) 【解析】C 類 IP 地址中網(wǎng)絡(luò)的標(biāo)識(shí)長度為 21 位,主機(jī)標(biāo)識(shí)的長度為 8 位,C 類網(wǎng)絡(luò)地 址數(shù)量較多,適用于小規(guī)模的局域網(wǎng)絡(luò),每個(gè)網(wǎng)絡(luò)最多只能包含 254 臺(tái)計(jì)算機(jī)。
(13)A ) 【解析】DNS 的中文意思是域名服務(wù)。域名服務(wù)是提供[主機(jī)名]到[IP 地址]轉(zhuǎn)換的一段
計(jì)算機(jī)程序。
(14)C ) 【解析】通常 ADSL 在不影響正常電話通信的情況下可以提供最高 3.5Mbps 的上傳速度 和最高 24Mbps 的下載速度。
(15)C ) 【解析】BIG5 是臺(tái)灣計(jì)算機(jī)界實(shí)行的漢字編碼字符集,在漢字編碼標(biāo)準(zhǔn)中,它不支持
簡體漢字,Big5 也是繁體的意思,GB 是簡體的意思。
(16)C ) 【解析】JPEG 是一種很靈活的格式,具有調(diào)節(jié)圖像質(zhì)量的功能,允許用不同的壓縮比
例對(duì)文件進(jìn)行壓縮,支持多種壓縮級(jí)別,壓縮比率通常在 10∶1 到 40∶1 之間,壓縮比越大,品質(zhì)就越低; 壓縮比越小,品質(zhì)就越好。
(17)D ) 【解析】播放 MIDI 音樂時(shí),發(fā)出的聲音是通過播放軟件或者音源的轉(zhuǎn)換而成的,可以
把 MIDI 理解成是一種協(xié)議、一種標(biāo)準(zhǔn)或一種技術(shù),但不要把它看作是某個(gè)硬件設(shè)備。
(18)A ) 【解析】“五筆字型”漢字輸入法不是 Windows 內(nèi)置的輸入法之一,可以通過安裝 Office 自定安裝或下載安裝。
(19)D ) 【解析】格式刷既可以復(fù)制字符格式,也可以復(fù)制段落格式;如需要多次復(fù)印,雙擊格
參考答案及解析 第 1 頁 共 3 頁
,式刷即可。在 Word 中提供了“格式復(fù)制”按鈕 ,它不復(fù)制內(nèi)容,只復(fù)制格式。
(20)D ) 【解析】演示文稿中不僅可以插入聲音文件,而且可以錄制旁白。
第二部分 C 語言程序設(shè)計(jì) 一、選擇題
(21)C ) 【解析】函數(shù)的定義中不能定義其他的函數(shù),只能應(yīng)用其他的函數(shù)。
(22)B ) 【解析】形式錯(cuò)誤,應(yīng)該用 123L 形式。
(23)D ) 【解析】sizeof 本身就是一個(gè)函數(shù),不能用來定義其他的函數(shù)或者變量。
(24)A ) 【解析】A 是數(shù)學(xué)式的形式,不能直接用作 c 中的邏輯表達(dá)式。
(25)B ) 【解析】注意:sizeof 表示的是字符串?dāng)?shù)組的長度,而 strlen 求的是字符串?dāng)?shù)組中字符的 個(gè)數(shù),也就是'0'之前的字符的個(gè)數(shù)。
(26)D ) 【解析】如果循環(huán)體只有一條語句,可以不用花括號(hào)。三種循環(huán)體都不能缺少循環(huán)終止
的條件,否則循環(huán)就一直進(jìn)行,稱為死循環(huán)。中有 do_while 循環(huán)體中的循環(huán)語句可以被無條件的執(zhí)行一次, 其他的循環(huán)體都不可以。
(27)D ) 【解析】D 中的花括號(hào)不成對(duì)出現(xiàn),顯然不符合語法。
(28)B ) 【解析】p 是指針型變量,不能作為數(shù)組的索引,程序不能執(zhí)行。不能輸出。
(29)A ) 【解析】ptr->a 實(shí)際上是結(jié)構(gòu)體數(shù)組的第一個(gè)元素的 a 成員值是 5。
(30)B ) 【解析】w :只寫打開或建立一個(gè)文本文件,只允許寫數(shù)據(jù);r :讀寫打開一個(gè)文本文 件,允許讀和寫;a :讀寫打開一個(gè)文本文件,允許讀,或在文件末追加數(shù)據(jù);r :只允許進(jìn)行“讀”操作。
二、填空題
● 基本概念題
(1)【1】extern
【解析】extern 用于聲明外部變量。
(2)【2】sqrt(abs(a-b))/(3*(a b)) 或者 sqrt(fabs(a-b))/(3*(a b))
【解析】絕對(duì)值函數(shù)是 fabs ,平方根函數(shù)是 sqrt 。
(3)【3】第一個(gè)元素地址 或者 起始地址
【解析】數(shù)組名實(shí)際上是一個(gè)地址常量,其值是數(shù)組的一個(gè)元素的地址。
(4)【4】(d)ld
【解析】scanf 是格式化輸入函數(shù),a 應(yīng)該放在()中表示區(qū)號(hào),b 放到()后面表示電話號(hào)碼,所以用(d)ld。
(5)【5】char *p
【解析】用花括號(hào)給字符串?dāng)?shù)組賦初值必須是在定義的時(shí)候,若是指針,則可以任意時(shí)候用花括號(hào)賦值。
● 閱讀程序題
(6)【6】3
【解析】m(m(2)):先調(diào)用 m(2):返回 1( s,s 當(dāng)前值是 0) 1( a)=2,再調(diào)用 m(2):返回 2( s,s 當(dāng) 前值是 1) 1( a)=3。(注意:在 C 語言中,全局變量和靜態(tài)變量,如果沒有賦初值,則默認(rèn)初始值 int ,float , char ,空指針分別為 0,0.0,'0',0。除了全局變量和靜態(tài)變量以外,其他變量如果沒有賦初值,則默認(rèn)初始值 為內(nèi)存中的垃圾內(nèi)容,對(duì)于垃圾內(nèi)容不能有任何假設(shè)。這些規(guī)則對(duì)于數(shù)組結(jié)構(gòu)體和聯(lián)合體也同樣適用)。
(7)【7】4
【解析】enum days {mon=1, tue, wed, thu, fri, sat, sun}定義了一個(gè)枚舉型常量,mon=1, tue=2, wed=3,
thu=4, fri=5, sat=6, sun=7, today=tue=2,所以(today 2)7)=47=4。
(8)【8】15
【解析】mystery(5,3)-> mystery(5,2)-> mystery(5,1)->return 5-> return 10-> return 15。
(9)【9】2 【10】0
【解析】do_while 循環(huán):首先 i2=52=1,i=4,continue ,做下一次的 switch 循環(huán)語句,i2=0,i--.i=3,
跳出 switch 運(yùn)行下面一條語句:打印 3。
32=1,i=2,22=0,i=1,跳出 switch 語句。執(zhí)行下一條語句:i 先自減一再打印 i ,i=0。
(10)【11】-8 4 【12】1 2
參考答案及解析 第 2 頁 共 3 頁
,【解析】n 是 x 數(shù)組的長度,函數(shù) fun :查找 a 中的同樣的字符,在數(shù)組 y 中依次記錄其個(gè)數(shù)(取反) 和該數(shù)字(當(dāng)該數(shù)字只出現(xiàn)一次,則不記錄其個(gè)數(shù),只記錄該數(shù)字本身),打印 y 時(shí)候的格式是:一行打
印兩個(gè)數(shù)字。
1 2 兩個(gè)數(shù)字,只有一個(gè),不記錄個(gè)數(shù),只記錄數(shù)字。
(11)【13】1 3 13 【14】1 5 21 【15】2 8 34
【解析】第一個(gè) for 循環(huán):b 數(shù)組設(shè)置為:1 1 2 3 5 8 13 21 34 (當(dāng)前項(xiàng)=前面兩項(xiàng)的和)。第二個(gè) for 循環(huán):i=0,j=0,a[0][0]=b[0];i=0,j=1,a[1][0]=b[1];i=0,j=2,a[2][0]=b[2];i=1,j=0,a[0][1]=b[3];i=1, j=1,a[1][1]=b[4];i=1,j=2,a[2][1]=b[5];i=2,j=0,a[0][2]=b[6];i=2,j=1,a[1][2]=b[7];i=2,j=2,a[2][2]=b[8]; a 數(shù)組:1 3 13,1 5 21,2 8 34。
(12)【16】32659 【17】23569 【18】256
【解析】puts (p )打印 p 指針指向的字符串?dāng)?shù)組。
insert 函數(shù):創(chuàng)建一個(gè)鏈表,其中結(jié)構(gòu)體變量把 32559 按照由小到大的順序重新排列了。
函數(shù) del 功能:把 2 的倍數(shù)的結(jié)點(diǎn)后面的一個(gè)結(jié)點(diǎn)刪除。
● 完善程序題
(13)【19】x1=x0
【解析】由程序可以看出:x1=cos(x);x0=x。
【20】fabs(x1-x0)>=1e-6
【解析】循環(huán)結(jié)束的條件,顯然:cos(x)與 x 之間的誤差即:x1 與 x0 之間的誤差小于 10循環(huán)就結(jié)束。
【21】root(0) -6
【解析】顯然要調(diào)用 root 函數(shù)求根,初值是 0。x=0 的時(shí)候,初始誤差最大等于 1,即在[0 1]之間找根。
(14)【22】p
【解析】題干中已知條件:該數(shù)字的末尾是 p 。該數(shù)字個(gè)位存放在 a[0]當(dāng)中。所以 a[0]=p,c 是進(jìn)位標(biāo) 志位。
【23】a[i-1]*p c
【解析】由題設(shè)的第二個(gè)條件“對(duì)于 i=1,2,3,…,計(jì)算“a[i-1]×p a[i-1]向 a[i]的進(jìn)位值”得到 t 。
若 t=p 則 A 已找到,否則將 t 的個(gè)位數(shù)保存到 a[i],t 的十位數(shù)作為 a[i]向 a[i 1]的進(jìn)位值”。可知該空應(yīng)該 是:a[i-1]×p a[i-1]向 a[i]的進(jìn)位值。即 a[i-1]*p c。
【24】n-1
【解析】輸出這個(gè)數(shù),一共有 n 位。從零開始標(biāo)號(hào),所以 i 的初值是 n-1。
(15)【25】*n=*m=0
【解析】m ,n 沒有初始值,必須賦值為 0。不然原來內(nèi)存中的數(shù)值會(huì)有不可預(yù)計(jì)的數(shù)。
【26】av =x[i]
【解析】由下面的語句可以看出:av 是數(shù)組的平均值,所以之前的 av 應(yīng)該是數(shù)組的元素的和,再取 平均即可得到均值。
【27】x[i]>=av
【解析】由題干可知:n 是那些大于等于均值的數(shù)的個(gè)數(shù),所以條件應(yīng)該是 x[i]>=av。
(16)【28】a[i]
【解析】語句“index[i].x=a[i][0];”是把數(shù)組每行的第一個(gè)元素賦值給 index[i].x,顯然,數(shù)組每一行 的第一個(gè)元素的地址賦值給 index[i].y。
【29】index[j].x> index[k].x
【解析】第二個(gè) for 循環(huán):把當(dāng)前結(jié)點(diǎn)后面第一個(gè)大于當(dāng)前結(jié)點(diǎn)的結(jié)點(diǎn)移動(dòng)到當(dāng)前結(jié)點(diǎn)的前面。即把結(jié)構(gòu) 體數(shù)組,按照從小到大的順序排列。If 的條件是:大于(如果大于,記錄這個(gè)結(jié)點(diǎn)的序號(hào),然后作交換)。
【30】*(p j)或者*( index[i].y j)
【解析】按照首地址輸出該行的每一個(gè)數(shù)字。
參考答案及解析 第 3 頁 共 3 頁