2023年下半年程序員考試試卷及答案_第1頁(yè)
2023年下半年程序員考試試卷及答案_第2頁(yè)
2023年下半年程序員考試試卷及答案_第3頁(yè)
2023年下半年程序員考試試卷及答案_第4頁(yè)
2023年下半年程序員考試試卷及答案_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2023年下半年程序員考試試卷及答案●在Word編輯狀態(tài)下,若要多次復(fù)制Word中的格式,使用方法為:一方面選中設(shè)立好格式的文字,在工具欄上(1)按鈕,光標(biāo)將變成格式刷的樣式;然后,選中需要設(shè)立同樣格式的(2),即可將選定格式復(fù)制到多個(gè)位置。取消格式刷時(shí),只需在工具欄上再次單擊格式刷按鈕,或者按下Esc鍵即可。

(2)A.文字,按下Ctrl+V鍵B.圖像,按下Ctrl+V鍵C.文字,或?qū)⑹髽?biāo)移到需要復(fù)制格式的段落內(nèi),再單擊鼠標(biāo)左鍵D.圖像,或?qū)⑹髽?biāo)移到需要復(fù)制格式的圖像內(nèi),再單擊鼠標(biāo)左鍵●Excel學(xué)生成績(jī)表如下表所示,若要計(jì)算表中每個(gè)學(xué)生計(jì)算機(jī)文化和英語(yǔ)課的平均成績(jī),那么,可通過(guò)在D3單元格中填寫(xiě)(3),并(4)拖動(dòng)填充柄至D10單元格,則可自動(dòng)算出這些學(xué)生的平均成績(jī)。

ABCD1學(xué)生成績(jī)表2姓名計(jì)算機(jī)文化英語(yǔ)平均成績(jī)3朱小梅8076

4于洋8572

5趙玲玲9082

6馮剛9179

7鄭麗8678

8孟曉珊8276

9楊子健9686

10廖東9380

(3)A.=AVG(B3+C3)B.=AVERAGE(B3+C3)C.=AVG(B3/C3)D.=AVERAGE(B3:C3)(4)A.向垂直方向B.向水平方向C.按住Shift鍵向垂直方向D.按住Shift鍵向水平方向●E-mail地址由分隔符“(5)”分為前后兩部分,分別指明用戶(hù)名及郵件服務(wù)器的域名。(5)A.//B.\\C.@D..●計(jì)算機(jī)系統(tǒng)中用來(lái)連接CPU、內(nèi)存儲(chǔ)器和I/O接口的總線稱(chēng)為系統(tǒng)總線。(6)總線屬于系統(tǒng)總線技術(shù)的一種。(6)A.IEEE1394B.PCIC.RS-232D.USB●微機(jī)系統(tǒng)中BIOS(基本輸入輸出系統(tǒng))保存在(7)中。(7)A.主板上的ROMB.DRAMC.主板上的RAMD.CD-ROM●(8)不屬于存儲(chǔ)器的速度性能指標(biāo)。(8)A.存儲(chǔ)周期B.存取時(shí)間C.主頻D.存儲(chǔ)器帶寬●下面關(guān)于Cache(高速緩沖存儲(chǔ)器)的敘述,“(9)”是錯(cuò)誤的。(9)A.在體系結(jié)構(gòu)上,Cache存儲(chǔ)器位于主存與CPU之間B.Cache存儲(chǔ)器存儲(chǔ)的內(nèi)容是主存部分內(nèi)容的拷貝C.使用Cache存儲(chǔ)器并不能擴(kuò)大主存的容量D.Cache的命中率只與其容量相關(guān)●計(jì)算機(jī)系統(tǒng)的可靠性通常用(10)來(lái)衡量。(10)A.平均響應(yīng)時(shí)間B.平均故障間隔時(shí)間C.平均故障時(shí)間D.數(shù)據(jù)解決速率●計(jì)算機(jī)系統(tǒng)可維護(hù)性是指(11)。(11)A.對(duì)系統(tǒng)進(jìn)行故障檢測(cè)與修復(fù)的定期時(shí)間間隔B.系統(tǒng)失效后能被修復(fù)的概率C.在單位時(shí)間內(nèi)完畢修復(fù)的概率D.系統(tǒng)失效后在規(guī)定的時(shí)間內(nèi)可修復(fù)到規(guī)定功能的能力●有關(guān)哈夫曼編碼方法,以下說(shuō)法對(duì)的的是(12)。(12)A.哈夫曼編碼是一種用于校驗(yàn)的編碼方法B.編碼過(guò)程中需要根據(jù)符號(hào)出現(xiàn)的概率來(lái)進(jìn)行編碼C.編碼過(guò)程中需要建立“詞典”D.哈夫曼編碼方法不能用于靜態(tài)圖像壓縮●下列光盤(pán)格式中,可以多次擦除重寫(xiě)數(shù)據(jù)的是(13)。(13)A.CD-ROMB.CD-DAC.CD-RD.CD-RW●某數(shù)碼相機(jī)內(nèi)置128MB的存儲(chǔ)空間,拍攝分辨率設(shè)定為1600×1200像素,顏色深度為24位,若不采用壓縮存儲(chǔ)技術(shù),使用內(nèi)部存儲(chǔ)器最多可以拍攝(14)張照片。(14)A.B.

C.D.

●關(guān)于計(jì)算機(jī)病毒的說(shuō)法,“(15)”是錯(cuò)誤的。(15)A.正版軟件不會(huì)感染病毒B.壓縮文獻(xiàn)包中也也許包含病毒C.病毒是一種特殊的軟件D.病毒只有在一定的條件下才會(huì)發(fā)作●關(guān)于數(shù)字署名,“(16)”是錯(cuò)誤的。(16)A.數(shù)字署名可以保證數(shù)據(jù)的完整性B.發(fā)送方無(wú)法否認(rèn)自己簽發(fā)的消息C.接受方可以得到發(fā)送方的私鑰D.接受方可以確認(rèn)發(fā)送方的身份●下列權(quán)利,不屬于軟件著作財(cái)產(chǎn)權(quán)的是(17)。(17)A.復(fù)制權(quán)B.署名權(quán)C.發(fā)行權(quán)D.翻譯權(quán)●依據(jù)我國(guó)知識(shí)產(chǎn)權(quán)的有關(guān)規(guī)定,(18)需要依法審查確認(rèn)后方能受法律保護(hù)。(18)A.專(zhuān)利權(quán)B.著作權(quán)C.商業(yè)秘密權(quán)D.信息網(wǎng)絡(luò)傳播權(quán)●在CRC(循環(huán)冗余校驗(yàn))方法中,采用了(19)運(yùn)算計(jì)算校驗(yàn)碼。(19)A.邏輯與B.邏輯或C.循環(huán)移位D.模2除法(異或)●若內(nèi)存按字節(jié)編址,用存儲(chǔ)容量為8K×8比特的存儲(chǔ)器芯片構(gòu)成地址編號(hào)7000H至EFFFH的內(nèi)存空間,則至少需要(20)片。(20)A.4B.6C.8D.10●已知X=–121,若采用8位機(jī)器碼表達(dá),則[X]原=(21),[X]補(bǔ)=(22)。(21)A.11001001B.11111001C.01111001D.01011001(22)A.10110111B.10000111C.10100111D.01111001●在Windows系統(tǒng)中,當(dāng)鼠標(biāo)指針呈現(xiàn)(23)形狀時(shí)表達(dá)處在等待狀態(tài)。(23)A.B.C.D.

●若分頁(yè)系統(tǒng)地址的結(jié)構(gòu)如下圖所示:

該系統(tǒng)頁(yè)的大小為(24)字節(jié),頁(yè)號(hào)的取值范圍為(25)。(24)A.1024B.2048C.4096D.8192(25)A.0~255B.1~256C.0~511D.1~512●已知有6個(gè)進(jìn)程共享一個(gè)互斥段,假如最多允許3個(gè)進(jìn)程同時(shí)進(jìn)入互斥段,則信號(hào)量S的變化范圍是(26);若信號(hào)量S的當(dāng)前值為-2,則表達(dá)系統(tǒng)中有(27)個(gè)正在等待該資源的進(jìn)程。(26)A.-5~1B.-3~3C.-2~4D.-2~5(27)A.0B.1C.2D.3●編譯型程序設(shè)計(jì)語(yǔ)言若規(guī)定程序中的變量必須先定義(或聲明)再引用,那么違反此規(guī)定的程序在(28)時(shí)報(bào)錯(cuò)。(28)A.編輯B.編譯C.鏈接D.運(yùn)營(yíng)●開(kāi)發(fā)微型嵌入式應(yīng)用系統(tǒng),采用(29)更合適。(29)A.C語(yǔ)言或匯編語(yǔ)言B.HTML或XML語(yǔ)言C.腳本語(yǔ)言D.SQL語(yǔ)言●設(shè)正規(guī)式S=(a|ba)*,則其相應(yīng)正規(guī)集的字符串(30)。(30)A.長(zhǎng)度必須是偶數(shù)B.長(zhǎng)度必須是奇數(shù)C.a不能連續(xù)出現(xiàn)D.b不能連續(xù)出現(xiàn)●對(duì)布爾表達(dá)式進(jìn)行短路求值是指:無(wú)須對(duì)式中所有操作數(shù)或運(yùn)算符進(jìn)行計(jì)算就可擬定表達(dá)式的值。對(duì)于表達(dá)式“bor((c>d)anda)”,(31)時(shí)可進(jìn)行短路計(jì)算。(31)A.d為trueB.a為trueC.b為trueD.c為true●函數(shù)f和g的定義如下圖所示。執(zhí)行函數(shù)f時(shí)需要調(diào)用函數(shù)g(a),若采用值調(diào)用方式(callbyvalue)調(diào)用g(a),則函數(shù)f的返回值為(32);若采用引用(callbyreference)方式調(diào)用g(a),則函數(shù)f的返回值為(33)。

(32)A.6B.13C.25D.28(33)A.35B.28C.25D.13●設(shè)數(shù)組a[1..6,0..9]的元素以行為主序存放,每個(gè)元素占用一個(gè)存儲(chǔ)單元,則數(shù)組元素a[3,3]的地址為(34)。(34)A.a+23B.a+27C.a+39D.a+35●若字符串s的長(zhǎng)度為n(n>1)且其中的字符互不相同,則s的長(zhǎng)度為2的子串有(35)個(gè)。(35)A.nB.n-1C.n-2D.2●若線性表(24,13,31,6,15,18,8)采用散列(Hash)法進(jìn)行存儲(chǔ)和查找,設(shè)散列函數(shù)為H(Key)=Keymod11,則構(gòu)造散列表時(shí)發(fā)生沖突的元素為(36)。(其中的mod表達(dá)整除取余運(yùn)算)(36)A.24和13B.6和15C.6和24D.18和8●線性表采用順序存儲(chǔ)結(jié)構(gòu),若表長(zhǎng)為m,且在任何一個(gè)合法插入位置上進(jìn)行插入操作的概率相同,則插入一個(gè)元素平均移動(dòng)(37)個(gè)元素。(37)A.m?1B.2C.1D.m●若二叉樹(shù)的先序遍歷序列與中序遍歷序列相同且樹(shù)中結(jié)點(diǎn)數(shù)大于1,則該二叉樹(shù)的(38)。(38)A.只有根結(jié)點(diǎn)無(wú)左子樹(shù)B.只有根結(jié)點(diǎn)無(wú)右子樹(shù)C.非葉子結(jié)點(diǎn)只有左子樹(shù)D.非葉子結(jié)點(diǎn)只有右子樹(shù)●由關(guān)鍵字序列(12,7,36,25,18,2)構(gòu)造一棵二叉排序樹(shù)(初始為空,第一個(gè)關(guān)鍵字作為根結(jié)點(diǎn)插入,此后對(duì)于任意關(guān)鍵字,若小于根結(jié)點(diǎn)的關(guān)鍵字,則插入左子樹(shù)中,若大于根結(jié)點(diǎn)的關(guān)鍵字,則插入右子樹(shù)中,且左、右子樹(shù)均為二叉排序樹(shù)),該二叉排序樹(shù)的高度(層數(shù))為(39)。(39)A.6B.5C.4D.3●對(duì)連通圖進(jìn)行遍歷前設(shè)立所有頂點(diǎn)的訪問(wèn)標(biāo)志為false(未被訪問(wèn)),遍歷圖后得到一個(gè)遍歷序列,初始狀態(tài)為空。深度優(yōu)先遍歷的含義是:從圖中某個(gè)未被訪問(wèn)的頂點(diǎn)v出發(fā)開(kāi)始遍歷,先訪問(wèn)v并設(shè)立其訪問(wèn)標(biāo)志為true(已訪問(wèn)),同時(shí)將v加入遍歷序列,再?gòu)膙的未被訪問(wèn)的鄰接頂點(diǎn)中選一個(gè)頂點(diǎn),進(jìn)行深度優(yōu)先遍歷;若v的所有鄰接點(diǎn)都已訪問(wèn),則回到v在遍歷序列的直接前驅(qū)頂點(diǎn),再進(jìn)行深度優(yōu)先遍歷,直至圖中所有頂點(diǎn)被訪問(wèn)過(guò)。(40)是下圖的深度優(yōu)先遍歷序列。

(40)A.123465B.126345C.162543D.123456●棧的運(yùn)算特點(diǎn)是后進(jìn)先出。元素a、b、c、d依次入棧,則不能得到的出棧序列是(41)。(41)A.abcdB.cabdC.dcbaD.bcda●兩個(gè)遞增序列A和B的長(zhǎng)度分別為m和n(m(42)A.當(dāng)A的最大元素大于B的最大元素時(shí)B.當(dāng)A的最大元素小于B的最小元素時(shí)C.當(dāng)A的最小元素大于B的最小元素時(shí)D.當(dāng)A的最小元素小于B的最大元素時(shí)●在任意一棵非空的二叉樹(shù)中,終端結(jié)點(diǎn)(葉子)的數(shù)目總是比具有兩個(gè)孩子的非終端結(jié)點(diǎn)的數(shù)目(43)。(43)A.多0個(gè)B.多1個(gè)C.多2個(gè)D.多3個(gè)●(44)是對(duì)象之間關(guān)聯(lián)的一個(gè)重要方面,它說(shuō)明了在關(guān)聯(lián)中一個(gè)類(lèi)的對(duì)象可以相應(yīng)另一個(gè)類(lèi)的多個(gè)對(duì)象。(44)A.繼承B.多態(tài)C.封裝D.多重性●聚集的一種形式是聚集對(duì)象和它的組成對(duì)象之間具有強(qiáng)關(guān)聯(lián)關(guān)系,這種聚集稱(chēng)為(45),其關(guān)鍵特性是部分對(duì)象只能存在于組成對(duì)象之中。(45)A.集合B.組合C.關(guān)聯(lián)D.弱關(guān)聯(lián)●(46)是類(lèi)的特性,它描述了類(lèi)的對(duì)象所具有的一系列特性值。(46)A.屬性B.操作C.行為D.狀態(tài)●面向?qū)ο?47)強(qiáng)調(diào)對(duì)問(wèn)題的調(diào)查而不是如何擬定解決方案,面向?qū)ο?48)強(qiáng)調(diào)的是問(wèn)題的邏輯解決方案,即系統(tǒng)如何才干滿(mǎn)足需求。(47)A.編程B.實(shí)現(xiàn)C.分析D.設(shè)計(jì)(48)A.編程B.實(shí)現(xiàn)C.分析D.設(shè)計(jì)●(49)屬于動(dòng)態(tài)交互圖,它們關(guān)注系統(tǒng)的動(dòng)態(tài)特性。(49)A.序列圖和通信圖B.序列圖和類(lèi)圖C.類(lèi)圖和對(duì)象圖D.用例圖和通信圖●結(jié)構(gòu)化分析方法(SA)采用“自頂向下,逐層分解”的開(kāi)發(fā)策略,其需求分析的結(jié)果中不涉及(50)。(50)A.一套分層的數(shù)據(jù)流圖B.一本數(shù)據(jù)字典C.一組加工邏輯D.一組用戶(hù)界面●(51)是一種面向數(shù)據(jù)結(jié)構(gòu)的軟件開(kāi)發(fā)方法,該方法以數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ),通過(guò)一組映射或轉(zhuǎn)換過(guò)程來(lái)建立程序的結(jié)構(gòu)。(51)A.結(jié)構(gòu)化開(kāi)發(fā)方法B.Jackson系統(tǒng)開(kāi)發(fā)方法C.Booch方法D.UML(統(tǒng)一建模語(yǔ)言)●通常在軟件開(kāi)發(fā)過(guò)程的(52)階段,無(wú)需用戶(hù)參與。(52)A.需求分析B.維護(hù)C.編碼D.測(cè)試●軟件測(cè)試分為黑盒測(cè)試和白盒測(cè)試,其中(53)方法屬于黑盒測(cè)試。(53)A.等價(jià)類(lèi)劃分和邊界值劃分B.循環(huán)覆蓋以及基本途徑測(cè)試C.錯(cuò)誤推測(cè)和邏輯覆蓋D.因果圖和途徑覆蓋●關(guān)于軟件文檔的敘述,“(54)”是錯(cuò)誤的。(54)A.文檔就是指軟件的操作說(shuō)明書(shū)B(niǎo).文檔是軟件產(chǎn)品的一部分,沒(méi)有文檔的軟件就不成為軟件C.高質(zhì)量文檔對(duì)于軟件開(kāi)發(fā)、維護(hù)和使用有重要的意義D.測(cè)試用例也是重要的軟件文檔●為了改善系統(tǒng)硬件環(huán)境和運(yùn)營(yíng)環(huán)境而產(chǎn)生的系統(tǒng)更新?lián)Q代需求而導(dǎo)致的軟件維護(hù)屬于(55)維護(hù)。(55)A.適應(yīng)性B.對(duì)的性C.完善性D.防止性●某軟件在進(jìn)行維護(hù)時(shí),因誤刪除一個(gè)標(biāo)記符而引起的錯(cuò)誤是(56)副作用。(56)A.文檔B.數(shù)據(jù)C.編碼D.設(shè)計(jì)●采用二維表格結(jié)構(gòu)表達(dá)實(shí)體類(lèi)型及實(shí)體間聯(lián)系的數(shù)據(jù)模型稱(chēng)為(57)。(57)A.層次模型B.網(wǎng)狀模型C.關(guān)系模型D.實(shí)體聯(lián)系模型●關(guān)系數(shù)據(jù)庫(kù)是表的集合。對(duì)視圖進(jìn)行查詢(xún),本質(zhì)上就是對(duì)從(58)中導(dǎo)出的數(shù)據(jù)進(jìn)行查詢(xún);支持?jǐn)?shù)據(jù)庫(kù)各種操作的軟件系統(tǒng)稱(chēng)為(59)。(58)A.一個(gè)或若干個(gè)基本表B.一個(gè)或若干個(gè)索引文獻(xiàn)C.一個(gè)或若干個(gè)視圖D.一個(gè)視圖(59)A.數(shù)據(jù)庫(kù)系統(tǒng)B.文獻(xiàn)系統(tǒng)C.數(shù)據(jù)庫(kù)管理系統(tǒng)D.操作系統(tǒng)●某銀行信貸額度關(guān)系credit-in(C_no,C_name,limit,Credit_balance)中的四個(gè)屬性分別表達(dá)用戶(hù)號(hào)、用戶(hù)姓名、信貸額度和累計(jì)消費(fèi)額。該關(guān)系的(60)屬性可以作為主鍵。下表為關(guān)系credit-in的一個(gè)具體實(shí)例。

查詢(xún)累計(jì)消費(fèi)額大于3000的用戶(hù)姓名以及剩余消費(fèi)額的SQL語(yǔ)句應(yīng)為:Select(61)Fromcredit-inWhere(62);(60)A.C_noB.C_nameC.Credit_balanceD.limit(61)A.C_name,Credit_balance-limitB.C_name,limit-Credit_balanceC.C_name,limit,Credit_balanceD.C_name,Credit_balance(62)A.limit>3000B.Credit_balance>3000C.limit-Credit_balance>3000D.Credit_balance-limit>3000●某一類(lèi)應(yīng)用問(wèn)題中,需規(guī)定正比例函數(shù)與反比例函數(shù)之和的極值。例如,正比例函數(shù)4x與反比例函數(shù)9/x之和用f(x)表達(dá),即f(x)=4x+9/x,(x>0),那么函數(shù)f(x)(63)。(63)A.沒(méi)有極小值B.在x=1時(shí)達(dá)成極大值C.在4x=9/x時(shí)達(dá)成極小值D.極大值是極小值的9/4倍●某民辦學(xué)校有若干間宿舍準(zhǔn)備安排給一批女生住。假如每間住3人,則會(huì)有21人無(wú)法安排;假如每間住6人,則最后一間不空也不滿(mǎn)。根據(jù)上述情況,可以推算出,該學(xué)校有(64)間宿舍,有(65)名女生需要安排住宿。(64)A.5B.6C.7D.8(65)A.45B.42C.39D.36●安全的Web服務(wù)器與客戶(hù)機(jī)之間通過(guò)(66)協(xié)議進(jìn)行通信。(66)A.HTTP+SSLB.Telnet+SSLC.Telnet+HTTPD.HTTP+FTP●下列Internet應(yīng)用中,傳輸層需要采用UDP協(xié)議的是(67)。(67)A.IP電話(huà)B.瀏覽Web頁(yè)面C.telnetD.發(fā)送電子郵件●網(wǎng)絡(luò)用戶(hù)能進(jìn)行QQ聊天,但在瀏覽器地址欄中輸入.org卻不能正常訪問(wèn)該頁(yè)面,此時(shí)應(yīng)檢查(68)。(68)A.網(wǎng)絡(luò)物理連接是否正常B.DNS服務(wù)器是否正常工作C.默認(rèn)網(wǎng)關(guān)設(shè)立是否對(duì)的D.IP地址設(shè)立是否對(duì)的●一個(gè)HTML文獻(xiàn)的起始標(biāo)記為(69)。(69)A.

<body>

B.

<title>

C.

<html>

D.

<meta>●ARP協(xié)議的功能是(70)。(70)A.由目的的IP地址求目的的MAC地址B.由目的的MAC地址求目的的IP地址C.由源的IP地址求源的MAC地址D.由源的MAC地址求源的IP地址●Asanoperatingsystemrepeatedlyallocatesandfreesstoragespace,manyphysicallyseparatedunusedareasappear.Thisphenomenoniscalled(71).(71)A.fragmentationB.compactionC.swappingD.paging●Todocumentyourcodecanincreaseprogram(72)andmakeprogrameasierto(73).(72)A.reliabilityB.securityC.readabilityD.usability(73)A.executeB.interpretC.compileD.maintain●Wecanusethewordprocessorto(74)yourdocuments.(74)A.editB.computeC.translateD.unload●A(75)infectedcomputermayloseitsdata.(75)A.fileB.databaseC.virusD.program試題一(共15分)閱讀以下說(shuō)明和流程圖,填補(bǔ)流程圖中的空缺(1)~(5),將解答填入答題紙的相應(yīng)欄內(nèi)。[說(shuō)明]下面流程圖的功能是:在已知字符串A中查找特定字符串B,假如存在,則輸出B串首字符在A串中的位置,否則輸出-1。設(shè)串A由n個(gè)字符A(0)、A(1)、…、A(n-1)組成,串B由m個(gè)字符B(0)、B(1)、…、B(m-1)組成,其中n≥m>0。在串A中查找串B的基本算法如下:從串A的首字符A(0)開(kāi)始,取子串A(0)A(1)…A(m-1)與串B比較;若不同,則再取子串A(1)A(2)…A(m)與串B比較,依次類(lèi)推。例如,字符串“CABBRFFD”中存在字符子串“BRF”(輸出3),不存在字符子串“RFD”(輸出-1)。在流程圖中,i用于訪問(wèn)串A中的字符(i=0,1,…,n-1),j用于訪問(wèn)串B中的字符(j=0,1,…,m-1)。在比較A(i)A(i+1)…A(i+m-1)與B(0)B(1)…B(m-1)時(shí),需要對(duì)A(i)與B(0)、A(i+1)與B(1)、…、A(i+j)與B(j)、…逐對(duì)字符進(jìn)行比較。若發(fā)現(xiàn)不同,則需要取下一個(gè)子串進(jìn)行比較,依此類(lèi)推。[流程圖]試題二(共15分)閱讀以下說(shuō)明和C程序代碼,將應(yīng)填入(n)處的字句寫(xiě)在答題紙的相應(yīng)欄內(nèi)。[說(shuō)明]下面C程序代碼的功能是:對(duì)于輸入的一個(gè)正整數(shù)n(100≤n<1000),先判斷其是否是回文數(shù)(正讀反讀都同樣的數(shù))。若不是,則將n與其反序數(shù)相加,再判斷得到的和數(shù)是否為回文數(shù),若還不是,再將該和數(shù)與其反序數(shù)相加并進(jìn)行判斷,依此類(lèi)推,直到得到一個(gè)回文數(shù)為止。例如,278不是回文數(shù),其反序數(shù)為872,相加后得到的1150還不是回文數(shù),再將1150與其反序數(shù)511相加,得到的1661是回文數(shù)。函數(shù)intisPalm(longm)的功能是:將正整數(shù)m的各位數(shù)字取出存入數(shù)組中,然后判斷其是否為回文數(shù)。若m是回文數(shù)則返回1,否則返回0。[C程序代碼]#include#includeintisPalm(longm){/*判斷m是否為回文數(shù)*/inti=0,k=0;charstr[32];while(m>0){/*從個(gè)位數(shù)開(kāi)始逐個(gè)取出m的各位數(shù)字并存入字符數(shù)組str*/str[k++]=(1)+'0';m=m/10;}for(i=0;i<k/2;i++)/*判斷str中的k個(gè)數(shù)字字符序列是否是回文*/if(str[i]!=str[(2)])return0;return1;}intmain(){longn,a,t;printf("inputapositiveinteger:");scanf("%ld",&n);if(n<100||n>=1000)return-1;while((3)){/*n不是回文數(shù)時(shí)執(zhí)行循環(huán)*/printf("%ld->",n);for(a=0,t=n;t>0;){/*計(jì)算n的反序數(shù)并存入a*/a=(4)*10+t%10;t=t/10;}/*endoffor*/n=(5);/*與反序數(shù)求和*/}/*endofwhile*/printf("%ld\n",n);system("pause");return0;}試題三(共15分)閱讀以下說(shuō)明和C函數(shù),將應(yīng)填入(n)處的字句寫(xiě)在答題紙的相應(yīng)欄內(nèi)。[說(shuō)明]已知某二叉樹(shù)的非葉子結(jié)點(diǎn)都有兩個(gè)孩子結(jié)點(diǎn),現(xiàn)將該二叉樹(shù)存儲(chǔ)在結(jié)構(gòu)數(shù)組Ht中。結(jié)點(diǎn)結(jié)構(gòu)及數(shù)組Ht的定義如下:#defineMAXLEAFNUM30structnode{charch;/*當(dāng)前結(jié)點(diǎn)表達(dá)的字符,對(duì)于非葉子結(jié)點(diǎn),此域不用*/char*pstr;/*當(dāng)前結(jié)點(diǎn)的編碼指針,非葉子結(jié)點(diǎn)不用*/intparent;/*當(dāng)前結(jié)點(diǎn)的父結(jié)點(diǎn),為0時(shí)表達(dá)無(wú)父結(jié)點(diǎn)*/intlchild,rchild;/*當(dāng)前結(jié)點(diǎn)的左、右孩子結(jié)點(diǎn),為0時(shí)表達(dá)無(wú)相應(yīng)的孩子結(jié)點(diǎn)*/};structnodeHt[2*MAXLEAFNUM];/*數(shù)組元素Ht[0]不用*/該二叉樹(shù)的n個(gè)葉子結(jié)點(diǎn)存儲(chǔ)在下標(biāo)為1~n的Ht數(shù)組元素中。例如,某二叉樹(shù)如圖3-1所示,其存儲(chǔ)結(jié)構(gòu)如圖3-2所示,其中,與葉子結(jié)點(diǎn)a相應(yīng)的數(shù)組元素下標(biāo)為1,a的父結(jié)點(diǎn)存儲(chǔ)在Ht[5],表達(dá)為Ht[1].parent=5。Ht[7].parent=0表達(dá)7號(hào)結(jié)點(diǎn)是樹(shù)根,Ht[7].lchild=3、Ht[7].rchild=6分別表達(dá)7號(hào)結(jié)點(diǎn)的左孩子是3號(hào)結(jié)點(diǎn)、右孩子是6號(hào)結(jié)點(diǎn)。假如用“0”或“1”分別標(biāo)記二叉樹(shù)的左分支和右分支(如圖3-1所示),從根結(jié)點(diǎn)開(kāi)始到葉子結(jié)點(diǎn)為止,按所通過(guò)度支的順序?qū)⑾鄳?yīng)標(biāo)記依次排列,可得到一個(gè)0、1序列,稱(chēng)之為相應(yīng)葉子結(jié)點(diǎn)的編碼。例如,圖3-1中a、b、c、d的編碼分別是100、101、0、11。函數(shù)LeafCode(Ht[],n)的功能是:求解存儲(chǔ)在Ht中的二叉樹(shù)中所有葉子結(jié)點(diǎn)(n個(gè))的編碼,葉子結(jié)點(diǎn)存儲(chǔ)在Ht[1]~Ht[n]中,求出的編碼存儲(chǔ)區(qū)由相應(yīng)的數(shù)組元素pstr域指示。函數(shù)LeafCode從葉子到根逆向求葉子結(jié)點(diǎn)的編碼。例如,對(duì)圖3-1中葉子結(jié)點(diǎn)a求編碼的過(guò)程如圖3-3所示。圖3-3從葉子到根求結(jié)點(diǎn)編碼示意圖typedefenumStatus{ERROR,OK}Status;[函數(shù)]StatusLeafCode(structnodeHt[],intn){intpc,pf;/*pc用于指出樹(shù)中的結(jié)點(diǎn),pf則指出pc所相應(yīng)結(jié)點(diǎn)的父結(jié)點(diǎn)*/inti,start;chartstr[31]={'\0'};/*臨時(shí)存儲(chǔ)給定葉子結(jié)點(diǎn)的編碼,從高下標(biāo)開(kāi)始存入*/for(i=1;(1);i++){/*對(duì)所有葉子結(jié)點(diǎn)求編碼,i表達(dá)葉結(jié)點(diǎn)在HT數(shù)組中的下標(biāo)*/start=29;pc=i;pf=Ht[i].parent;while(pf!=(2)){/*沒(méi)有到達(dá)樹(shù)根時(shí),繼續(xù)求編碼*/if((3).lchild==pc)/*pc所表達(dá)的結(jié)點(diǎn)是其父結(jié)點(diǎn)的左孩子*/tstr[--start]='0';elsetstr[--start]='1';pc=(4);pf=Ht[pf].parent;/*pc和pf分別向根方向回退一層*/}/*endofwhile*/Ht[i].pstr=(char*)malloc(31-start);if(!Ht[i].pstr)returnERROR;strcpy(Ht[i].pstr,(5));}/*endoffor*/returnOK;}/*endofLeafCode*/試題四(共15分)閱讀以下說(shuō)明和C函數(shù)代碼,回答問(wèn)題并將解答寫(xiě)在答題紙的相應(yīng)欄內(nèi)。[說(shuō)明]著名的菲波那契數(shù)列定義式為f1=1f2=1fn=fn-1+fn-2(n=3,4,…)因此,從第1項(xiàng)開(kāi)始的該數(shù)列為1,1,2,3,5,8,13,21,…。函數(shù)fib1和fib2分別用遞歸方式和迭代方式求解菲波那契數(shù)列的第n項(xiàng)(調(diào)用fib1、fib2時(shí)可保證參數(shù)n獲得一個(gè)正整數(shù))。[C函數(shù)代碼][問(wèn)題1](6分)函數(shù)fib1和fib2存在錯(cuò)誤,只需分別修改其中的一行代碼即可改正錯(cuò)誤。(1)函數(shù)fib1不能通過(guò)編譯,請(qǐng)寫(xiě)出fib1中錯(cuò)誤所在行修改對(duì)的后的完整代碼;(2)函數(shù)fib2在n≤2時(shí)不能獲得對(duì)的結(jié)果,請(qǐng)寫(xiě)出fib2中錯(cuò)誤所在行修改對(duì)的后的完整代碼。[問(wèn)題2](3分)將函數(shù)fib1和fib2改正后進(jìn)行測(cè)試,發(fā)現(xiàn)前46項(xiàng)都對(duì)的,而第47項(xiàng)的值是一個(gè)負(fù)數(shù),請(qǐng)說(shuō)明因素。[問(wèn)題3](6分)函數(shù)fib1、fib2求得菲波那契數(shù)列第n項(xiàng)(n>40)的速度并不相同,請(qǐng)指出速度慢的函數(shù)名,并簡(jiǎn)要說(shuō)明因素。試題五(共15分)閱讀以下應(yīng)用說(shuō)明、屬性設(shè)立以及VisualBasic程序代碼,將解答寫(xiě)在答題紙的對(duì)應(yīng)欄內(nèi)。[應(yīng)用說(shuō)明]本應(yīng)用運(yùn)營(yíng)時(shí),由用戶(hù)輸入一個(gè)正整數(shù)n后自動(dòng)產(chǎn)生n個(gè)正整數(shù),然后按照用戶(hù)的指定規(guī)定對(duì)該組數(shù)進(jìn)行解決。該應(yīng)用的運(yùn)營(yíng)界面如下圖所示:1.窗體中有兩個(gè)文本框(txtSrc,txtObj)、兩個(gè)標(biāo)簽(lblSrc,lblObj)、三個(gè)命令按鈕(cmdGendat,cmdProc,cmdQuit)和一個(gè)彈出式菜單(procMenu,初始時(shí)不可見(jiàn))。2.文本框txtSrc(由標(biāo)簽lblSrc提醒)用于顯示產(chǎn)生的數(shù)據(jù),文本框txtObj(由標(biāo)簽lblObj提醒)用于顯示解決結(jié)果,規(guī)定每行顯示一個(gè)整數(shù)。3.程序啟動(dòng)時(shí),命令按鈕cmdProc(運(yùn)算規(guī)定)不可用。點(diǎn)擊命令按鈕cmdGendat(產(chǎn)生數(shù)據(jù))后,提醒用戶(hù)輸入一個(gè)n的值并生成n個(gè)正整數(shù)存入數(shù)組元素a(1)~a(n),然后將數(shù)據(jù)逐行顯示在txtSrc中,并設(shè)立命令按鈕cmdProc可用。4.點(diǎn)擊命令按鈕cmdProc(運(yùn)算規(guī)定)后彈出菜單。選擇菜單項(xiàng)并單擊后,進(jìn)行相應(yīng)解決并將結(jié)果顯示在txtObj中,同時(shí)將lblObj的標(biāo)題改為該菜單項(xiàng)表達(dá)的解決命令。彈出式菜單“運(yùn)算規(guī)定”的結(jié)構(gòu)如下表所示:標(biāo)題名稱(chēng)層次運(yùn)算規(guī)定procMenu1排序Sorting2遞增排列Ascend3遞減排列Descend3找特殊數(shù)SpecNum2中位數(shù)MidNum3求均數(shù)AvgNum3一個(gè)整數(shù)序列的中位數(shù)指對(duì)該序列進(jìn)行非遞減(增)排列后最中間位置上的元素。若序列長(zhǎng)度為偶數(shù),則取中間兩個(gè)元素的平均值為其中位數(shù)。[屬性設(shè)立]為實(shí)現(xiàn)單擊命令按鈕cmdProc后彈出“運(yùn)算規(guī)定”菜單(procMenu),設(shè)計(jì)時(shí)需將procMenu的(1)屬性設(shè)立成false。供(1)選擇的屬性:DefaultEnabledScaleModeStyleVisible從下列3道試題(試題五至試題七)中任選1道解答。假如解答的試題數(shù)超過(guò)1道,則題號(hào)小的1道解答有效。[VisualBasic程序代碼]Dima()AsInteger,nAsIntegerPrivateSubForm_Load()txtSrc.Text="":txtObj.Text="":(2)=FalseEndSubPrivateSubcmdGendat_Click()'生成正整數(shù)序列并存入數(shù)組aOnErrorGoToError_handlern=InputBox$("請(qǐng)輸入數(shù)組元素個(gè)數(shù):","輸入序列長(zhǎng)度")If(n<1)ThenMsgBox"輸入數(shù)據(jù)錯(cuò)誤!",vbOKOnly,"提醒:"GoToError_handler:EndIfReDima(n)AsIntegers=""Fori=1Ton'將生成的正整數(shù)存入a(1)~a(n)中a(i)=Int(Rnd*10000):s=s&Str$(a(i))&vbCrLfNexttxtSrc.Text=s(3)'設(shè)立運(yùn)算規(guī)定命令按鈕可用Error_handler:EndSubPrivateSubcmdProc_Click()PopupMenuprocMenuEndSubPrivateSubMidNum_Click()'求中位數(shù)lblObj.Caption=MidNum.Caption&":"Fori=1Toround((n+1)/2)'用選擇排序法對(duì)數(shù)組a進(jìn)行部分排序a(0)=a(i):k=i'a(0)用作臨時(shí)變量,暫存第i次選出的最小元素Forj=i+1TonIfa(j)<a(0)Thena(0)=a(j):k=(4)EndIfNextIfk<>iThena(k)=a(i):a(i)=a(0)EndIfNextIfn/2-n\2>0Then'n為奇數(shù)時(shí),取中間一個(gè)數(shù)txtObj.Text=Str$(a((5)))Else'n為偶數(shù)時(shí),取中間兩個(gè)數(shù)的平均值txtObj.Text=Str$(Int((a(n\2)+a(n\2+1))/2))EndIfEndSub'其他代碼略試題六(共15分)閱讀以下說(shuō)明和C++代碼,將應(yīng)填入(n)處的字句寫(xiě)在答題紙的相應(yīng)欄內(nèi)。[說(shuō)明]C++標(biāo)準(zhǔn)模板庫(kù)中提供了vector模板類(lèi),可作為動(dòng)態(tài)數(shù)組使用,并可容納任意數(shù)據(jù)類(lèi)型,其所屬的命名空間為std。vector模板類(lèi)的部分方法說(shuō)明如下表所示:方法含義push_back(k)向vector對(duì)象的尾部添加一個(gè)元素kbegin()返回一個(gè)迭代器對(duì)象,該對(duì)象指向vector中的第一個(gè)元素end()返回一個(gè)迭代器對(duì)象,該對(duì)象指向vector中的最后一個(gè)元素empty()測(cè)試vector對(duì)象是否為空erase(ptr)刪除vector中ptr指向的元素[C++代碼]#include#includeusingnamespace(1);typedefvector<(2)>INTVECTOR;constintARRAY_SIZE=6;voidShowVector(INTVECTOR&theVector);intmain(){INTVECTORtheVector;//初始化theVector,將theV

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論