編程規(guī)范課程試題卷_第1頁
編程規(guī)范課程試題卷_第2頁
編程規(guī)范課程試題卷_第3頁
編程規(guī)范課程試題卷_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡(jiǎn)介

判斷題(共19題,每題2分,直接在括號(hào)內(nèi)打“,”或“X”)(對(duì))1、不允許把多個(gè)短語句寫在一行中,即一行只寫一條語句。(對(duì))2、如果編程工具提供將 TAB鍵轉(zhuǎn)換成空格鍵,對(duì)齊、縮進(jìn)可以使用TAB鍵,否則應(yīng)使用空格鍵。(對(duì))3、數(shù)據(jù)結(jié)構(gòu)聲明(包括數(shù)組、結(jié)構(gòu)、類、枚舉等),如果其命名不是充分自注釋的,必須加以注釋。(對(duì))4、i,j,k只可以用作循環(huán)變量,不能用于其它局部變量。(錯(cuò))5、當(dāng)一個(gè)表達(dá)式包含多個(gè)運(yùn)算符時(shí),應(yīng)該盡量用默認(rèn)優(yōu)先級(jí)來保證表達(dá)式的運(yùn)算順序。(對(duì))6、由于引用了全局變量和靜態(tài)局部變量的函數(shù)不方便重入,因此在實(shí)時(shí)系統(tǒng)編程中,應(yīng)盡量減少對(duì)全局變量和靜態(tài)局部變量的使用。(錯(cuò))7、應(yīng)當(dāng)盡可能設(shè)計(jì)功能全面、靈活的數(shù)據(jù)結(jié)構(gòu),以提高效率。(錯(cuò))8、結(jié)構(gòu)中元素的排列不影響結(jié)構(gòu)占用空間的大小。(錯(cuò))9、斷言可以用來處理程序的任何錯(cuò)誤情況。(錯(cuò))10、在一般應(yīng)用的情況下,當(dāng)前代碼,處理一個(gè)1000條記錄的結(jié)果只要2000毫秒。采用了新的處理機(jī)制,處理同樣大小的結(jié)果只要 1999毫秒,這種提高還是有重要意義的。(對(duì))11、提高代碼效率應(yīng)當(dāng)保證軟件系統(tǒng)的正確性、穩(wěn)定性、可讀性及可測(cè)性的前提下進(jìn)行。(錯(cuò))12、內(nèi)存操作越界可以通過測(cè)試發(fā)現(xiàn),設(shè)計(jì)時(shí)不必過分關(guān)注 ^(對(duì))13、對(duì)程序進(jìn)行編譯時(shí),必須打開編譯器的所有告警開關(guān)。(對(duì))14、用宏定義代替表達(dá)式時(shí),要使用完備的括號(hào),保證宏定義的完整性。(對(duì))15、單元測(cè)試開始要跟蹤每一條語句,并觀察數(shù)據(jù)流及變量的變化。不能進(jìn)行單步跟蹤的代碼,要采用日志輸出等形式,跟蹤數(shù)據(jù)流和變量的變化;(對(duì))16、一個(gè)函數(shù)僅完成一件功能。(對(duì))17、對(duì)參數(shù)輸入和非參數(shù)輸入都要檢查有效性。(錯(cuò))18、應(yīng)該設(shè)計(jì)高扇出、合理扇入的函數(shù)。(錯(cuò))19、應(yīng)該為函數(shù)功能的擴(kuò)展預(yù)留盡可能多的參數(shù)接口。二、單項(xiàng)選才1題(共17題,每題2分)(D)1、下面哪條語句符合編程規(guī)范:for(...){...//programcode}if(...){...//programcode}voidexample_fun(void){...//programcode}以上都不對(duì)。(D)2、下面哪種變量定義不當(dāng),可能導(dǎo)致堆棧溢出?A、靜態(tài)全局變量B、動(dòng)態(tài)全局變量C、靜態(tài)局部變量D、動(dòng)態(tài)局部變量(D)3、在C語言中,若有以下定義:char a; intb;float c; doubled;則表達(dá)式a*b+d-c值的類型為:A、floatB、intC、charD、double(A)4、關(guān)于結(jié)構(gòu),不正確的說法是:A、結(jié)構(gòu)的功能要盡可能強(qiáng)大B、結(jié)構(gòu)的元素不可以隨意排列C、功能太單一的結(jié)構(gòu)會(huì)降底代碼質(zhì)量D、結(jié)構(gòu)間的關(guān)系不能太復(fù)雜(D)5、下面的說法,哪個(gè)描述是 正確的?A、測(cè)試代碼只是調(diào)測(cè)時(shí)使用,所以沒有必要象正式代碼一樣給出注釋。B、在軟件系統(tǒng)中設(shè)置與取消有關(guān)測(cè)試手段,軟件功能行為上可以不一致。C、調(diào)測(cè)開關(guān)統(tǒng)一使用_UNIT_DEBUG,一般不允許再定義其它新的調(diào)測(cè)開關(guān)。D、好的測(cè)試用例應(yīng)盡可能模擬出程序所遇到的邊界值、各種復(fù)雜環(huán)境及一些極端情況等。(A)6、關(guān)于程序效率,正確的說法是oA、要減少循環(huán)嵌套次數(shù)B、提倡用匯編提高效率C、程序效率是最重要的D>最忙的循環(huán)放在最外面(A)7、用,可提高浮點(diǎn)運(yùn)算效率。A、乘法代替除法B、除法代替乘法C、減法代替加法D除法代替加法(D)8、下列說法中,錯(cuò)誤的是:A、switch語句必須有default分支B、系統(tǒng)運(yùn)行之初,必須初始化有關(guān)變量C、必須防止引用已經(jīng)釋放的內(nèi)存空間D、為了提高代碼效率,應(yīng)盡可能使用嵌入式匯編(B)9、下面哪種情況是規(guī)范中所說的差“ 1”錯(cuò)誤A、錯(cuò)誤使用“++”B、“>=”錯(cuò)寫成“>”C、變量右移時(shí)多移了 1個(gè)BITD、short型變量錯(cuò)誤定義為char型而少了一個(gè)字節(jié)(A)10、關(guān)于代碼的編輯、編譯,下面說法不正確的是A、在產(chǎn)品軟件(項(xiàng)目組)中,不需要統(tǒng)一編譯開關(guān)選項(xiàng)。B、雖然編輯器提供的塊拷貝功能很方便,但還是要小心使用。C、合理設(shè)計(jì)軟件系統(tǒng)目錄,方便開發(fā)人員使用。D、某些語句經(jīng)編譯后產(chǎn)生告警,但如果你認(rèn)為它是正確的,那么應(yīng)通過某種手段去掉告警信息。(B)11、選擇出正確的宏定義oA、#defineINIT_RECT_VALUE(a,b)\a=0;b=0;for(index=0;index<RECT_TOTAL_NUM;index++)INIT_RECT_VALUE(rect.a,rect.b);B、#defineINIT_RECT_VALUE(a,b)\{a=0;b=0;}for(index=0;index<RECT_TOTAL_NUM;index++){INIT_RECT_VALUE(rect[index].a,rect[index].b);}C、#defineINIT_RECT_VALUE(a,b)\(a=0;b=0;)for(index=0;index<RECT_TOTAL_NUM;index++)INIT_RECT_VALUE(rect.a,rect.b);D、#defineINIT_RECT_VALUE(a,b)\a=0;b=0;for(index=0;index<RECT_TOTAL_NUM;index++)(INIT_RECT_VALUE(rect.a,rect.bj);(A)12、單元測(cè)試的覆蓋率要求至少達(dá)到A、語句覆蓋;B、條件覆蓋;C、邏輯覆蓋;D、分支覆蓋;(A)13、關(guān)于函數(shù)參數(shù), 正確的說法是oA、不必要的參數(shù)應(yīng)從接口中去掉。B、應(yīng)為將來的應(yīng)用保留充分多的參數(shù)。C、較多的參數(shù)可使函數(shù)的功能強(qiáng)大,測(cè)試、維護(hù)容易。D、將函數(shù)的參數(shù)作為工作變量,以提高編程和程序執(zhí)行速度。(B)14、關(guān)于函數(shù)實(shí)現(xiàn), 不正確的說法是oA、明確函數(shù)功能,精確(而不是近似)地實(shí)現(xiàn)函數(shù)設(shè)計(jì)。B、為使得函數(shù)具有可重入性,應(yīng)使用static局部變量。C、編寫可重入函數(shù)時(shí),若使用全局變量,則應(yīng)通過關(guān)中斷、信號(hào)量(即 P、V操作)等手段對(duì)其加以保護(hù)。D、函數(shù)的功能應(yīng)該是可以預(yù)測(cè)的,也就是只要輸入數(shù)據(jù)相同就應(yīng)產(chǎn)生同樣的輸出。(D)15、關(guān)于函數(shù)命名, 不正確的說法是oA、函數(shù)名應(yīng)準(zhǔn)確描述函數(shù)的功能。B、使用動(dòng)賓詞組為執(zhí)行某操作的函數(shù)命名。如果是OOP方法,可以只有動(dòng)詞(名詞是對(duì)象本身)。C、避免使用無意義或含義不清的動(dòng)詞為函數(shù)命名。D、函數(shù)名稱越簡(jiǎn)單越好。(D)16、關(guān)于函數(shù),不正確的說法是oA、除非必要,最好不要把與函數(shù)返回值類型不同的變量,以編譯系統(tǒng)默認(rèn)的轉(zhuǎn)換方式或強(qiáng)制的轉(zhuǎn)換方式作為返回值返回。B、應(yīng)減少函數(shù)本身或函數(shù)間的遞歸調(diào)用。C、函數(shù)的規(guī)模盡量限制在 200行以內(nèi)。D、函數(shù)中的冗余代碼只要不影響函數(shù)的效率,不需要?jiǎng)h除。(C)17、代碼質(zhì)量保證優(yōu)先原則,下面哪個(gè)應(yīng)最優(yōu)先考慮A、穩(wěn)定性、安全性,指程序穩(wěn)定、可靠、安全。B、全局效率,指軟件系統(tǒng)的整體效率。C、正確性,指程序要實(shí)現(xiàn)設(shè)計(jì)要求的功能。D、可測(cè)試性,指程序要具有良好的可測(cè)試性。三、多項(xiàng)選擇題(共14題,每題2分,少答、多答、答錯(cuò)皆不得分)(ABD)1、關(guān)于程序注釋,哪些描述是 正確的?A、修改代碼同時(shí)修改相應(yīng)的注釋,以保證注釋與代碼的一致性B、錯(cuò)誤的注釋不但無益反而有害C、不再有用的注釋不能刪除D、變量、常量、宏的注釋應(yīng)放在其上方相鄰位置或右方(ABD)2、關(guān)于程序注釋,哪些描述是 正確的?A、說明性文件(.h,.def等)的頭部應(yīng)該進(jìn)行注釋B、函數(shù)頭部應(yīng)該進(jìn)行注釋C、注釋越多越好D、全局變量必須要有注釋(ABC)3、為了使程序具有更好的可讀性,以下描述正確的:A、用括號(hào)明確表達(dá)式的操作順序,避免使用默認(rèn)優(yōu)先級(jí);B、避免使用不易理解的數(shù)字,用有意義的標(biāo)識(shí) (宏或枚舉)來替代;C、源程序中關(guān)系較為緊密的代碼應(yīng)盡可能相鄰;D、使用技巧性很高的語句;(AB)4、下列定義中正確的是:A、char*a="abcd";B、chara[]="abcd";C、chara[4]="abcd";D、chara[]='abcd';(ABC)5、定義如下結(jié)構(gòu)structTEMP_MSG(intiLen; //總消息長度,從頭開始算起shortsSerialNo; //序歹U號(hào)charcFlag;//執(zhí)行標(biāo)志charcReserved; //保留未使用};對(duì)這個(gè)結(jié)構(gòu)定義的評(píng)價(jià)中,正確的是:A、由于數(shù)據(jù)結(jié)構(gòu)的成員都在字節(jié)對(duì)齊邊界上,因此存取效率良好;B、由于數(shù)據(jù)結(jié)構(gòu)的成員都在字節(jié)對(duì)齊邊界上,因此節(jié)省了占用空間;C、cReserved成員保留,可以為以后版本升級(jí)和兼容留有余地;(ABCD)6、在分布式環(huán)境或不同 CPU間的通訊環(huán)境中,下面的描述中正確的是:A、不同字節(jié)序的CPU之間的通訊時(shí),必須進(jìn)行字節(jié)序轉(zhuǎn)換;B、字節(jié)對(duì)齊方式是在編譯時(shí)決定的,因此應(yīng)盡量在不同的 CPU環(huán)境上使用相同的字節(jié)對(duì)齊方式;C、由于不同編譯環(huán)境對(duì)位域的處理可能有差異,因此應(yīng)盡量避免使用位域進(jìn)行通訊;D、由于不同編譯環(huán)境對(duì)枚舉值所占有空間的定義有差異,因此應(yīng)盡量避免使用枚舉值進(jìn)行通訊。(ABD)7、關(guān)于可測(cè)性, 不正確的說法是oA、斷言可以用來處理必須處理的錯(cuò)誤情況B、調(diào)試時(shí)打印的出錯(cuò)信息只要有錯(cuò)誤碼就行了C、項(xiàng)目組內(nèi)要有一套統(tǒng)一的錯(cuò)誤輸出函數(shù)D、軟件的DEBUG版本與發(fā)行版本可以分為兩套源代碼(BCD)8、下列說法哪些是正確的:A、在軟件調(diào)試過程中構(gòu)筑軟件質(zhì)量B、充分了解系統(tǒng)接口后,再使用系統(tǒng)提供的功能C、過程/函數(shù)中分配的內(nèi)存,如果不再使用,在過程 /函數(shù)退出之前要釋放D、不能引用已經(jīng)釋放的內(nèi)存空間 ,不能隨意改變與其它模塊的接口E、以上都不對(duì)(ABD)9、關(guān)于代碼質(zhì)量保證優(yōu)先次序,不正確的是:A、可測(cè)試性最重要B、效率比可讀性重要C、穩(wěn)定性比可讀性重要D、局部效率優(yōu)先于全局效率(ABD)10、關(guān)于代碼的編輯、編譯和審查,下面說法正確的是:A、使用代碼靜態(tài)檢查工具 PC_LINT對(duì)源程序進(jìn)行檢查。B、審查代碼時(shí),可使用LogiScope工具進(jìn)行。C、代碼編寫時(shí)為了節(jié)約時(shí)間,提高效率,可一鼓作氣編寫完畢后再做保存和備份處理。

(BC(ABCD(ABCD(ABC)D、(BC(ABCD(ABCD(ABC)?11、使用宏有哪些注意事項(xiàng)oA、不能使用含有數(shù)字的字符串定義宏變量B、將宏所定義的多條表達(dá)式放在大括號(hào)中C、使用宏時(shí),不允許參數(shù)發(fā)生變化D、不能用大寫字母定義宏變量)12、關(guān)于函數(shù)的調(diào)用,正確的說法是oA、讓函數(shù)在調(diào)用點(diǎn)顯得易懂、容易理解。B、在調(diào)用函數(shù)填寫參數(shù)時(shí),應(yīng)盡量減少?zèng)]有必要的默認(rèn)數(shù)據(jù)類型轉(zhuǎn)換或強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換。C、對(duì)所調(diào)用函數(shù)的錯(cuò)誤返回碼要仔細(xì)、全面地處理。D、對(duì)于提供了返回值的

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論