計算機國二C語言考試試題第五套_第1頁
計算機國二C語言考試試題第五套_第2頁
計算機國二C語言考試試題第五套_第3頁
計算機國二C語言考試試題第五套_第4頁
計算機國二C語言考試試題第五套_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第五套1.算法分析的目的是( ) A.找出數(shù)據(jù)結(jié)構(gòu)的合理性 B.找出算法中輸入和輸出之間的關(guān)系 C.分析算法的易懂性和可靠性 D.分析算法的效率以求改進分析:算法分析是指對一個算法的運行時間和占用空間做定量的分析,一般計算出相應(yīng)數(shù)量級,常用時間復(fù)雜度和空間復(fù)雜度表示。分析算法的目的就是要降低算法的時間復(fù)雜度和空間復(fù)雜度,提高算法的執(zhí)行效率。2.在單鏈表中,增加頭結(jié)點的目的是( ) A.方便運算的 B.使單鏈表至少有一個結(jié)點 C.標識表結(jié)點中首結(jié)點的位置 D.說明單鏈表是線性表的鏈式存儲實現(xiàn)分析:頭結(jié)點不僅標識了表中首結(jié)點的位置,而且根據(jù)單鏈表(包含頭結(jié)點)的結(jié)構(gòu),只要掌握了表頭,就能夠訪問整個

2、鏈表,因此增加頭結(jié)點目的是為了便于運算的實現(xiàn)。3.軟件開發(fā)離不開系統(tǒng)環(huán)境資源的支持,其中必要的測試數(shù)據(jù)屬于( ) A.硬件資源 B.通信資源 C.支持軟件 D.輔助資源分析:D4.分布式數(shù)據(jù)庫系統(tǒng)不具有的特點是( ) A.數(shù)據(jù)分布性和邏輯整體性 B.位置透明性和復(fù)制透明性 C.分布性 D.數(shù)據(jù)冗余分析:分布式數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)分布性、邏輯整體性、位置透明性和復(fù)制透明性的特點,其數(shù)據(jù)也是分布的;但分布式數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)經(jīng)常重復(fù)存儲,數(shù)據(jù)也并非必須重復(fù)存儲,主要視數(shù)據(jù)的分配模式而定。若分配模式是一對多,即一個片段分配到多個場地存放,則是冗余的數(shù)據(jù)庫,否則是非冗余的數(shù)據(jù)庫。5.下列數(shù)據(jù)模型,有堅實理

3、論基礎(chǔ)的是( ) A.層次模型 B.網(wǎng)狀模型 C.關(guān)系模型 D.以上3個都是分析:關(guān)系模型較之格式化模型(網(wǎng)狀模型和層次模型)有以下方面的優(yōu)點,即數(shù)據(jù)結(jié)構(gòu)比較簡單、具有很高的數(shù)據(jù)獨立性、可以直接處理多對多的聯(lián)系,以及有堅實的理論基礎(chǔ)。6.棧底到棧頂依次存放元素A、B、C、D,在第五個元素E入棧前,棧中元素可以出棧,則出棧序列可能是( ) A.ABCED B.DCBEA C.DBCEA D.CDABE分析:棧操作原則上“后進先出”,棧底至棧頂依次存放元素A、B、C、D,則表明這4個元素中D是最后進棧,B、C處于中間,A最早進棧。所以出棧時一定是先出D,再出C,最后出A。7.在結(jié)構(gòu)化程序設(shè)計思想提

4、出之前,在程序設(shè)計中曾強調(diào)程序的效率,現(xiàn)在,與程序的效率相比,人們更重視程序的( ) A.安全性 B.一致性 C.可理解性 D.合理性分析:C8.軟件開發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成( ) A.定義、開發(fā)、運行維護 B.設(shè)計階段、編程階段、測試階段 C.總體設(shè)計、詳細設(shè)計、編程調(diào)試 D.需求分析、功能定義、系統(tǒng)設(shè)計分析:通常,將軟件產(chǎn)品從提出、實現(xiàn)使用維護到停止使用退役的過程稱為軟件生命周期。它可以分為軟件定義、軟件開發(fā)及軟件運行維護3個階段。9.在數(shù)據(jù)管理技術(shù)發(fā)展過程中,文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的主要區(qū)別是數(shù)據(jù)庫系統(tǒng)具有( ) A.特定的數(shù)據(jù)模型 B.數(shù)據(jù)無冗余 C.數(shù)據(jù)可共享 D.

5、專門的數(shù)據(jù)管理軟件分析:在文件系統(tǒng)中,相互獨立的記錄其內(nèi)部結(jié)構(gòu)的最簡單形式是等長同格式記錄的集合,易造成存儲空間大量浪費,不方便使用。在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)是結(jié)構(gòu)化的,這種結(jié)構(gòu)化要求在描述數(shù)據(jù)時不僅描述數(shù)據(jù)本身,還要描述數(shù)據(jù)間的關(guān)系,這正是通過采用特定的數(shù)據(jù)模型來實現(xiàn)的。10.實體是信息世界中廣泛使用的一個術(shù)語,它用于表示( ) A.有生命的事物 B.無生命的事物 C.實際存在的事物 D.一切事物分析:實體是客觀存在且可以相互區(qū)別的事物。實體可以是具體的對象,如一個學生,也可以是一個抽象的事件,如一次出門旅游等。因此,實體既可以是有生命的事物,也可是無生命的事物,但它必須是客觀存在的,而且可以相

6、互區(qū)別。11.下面敘述中正確的是( ) A.C語言編譯時不檢查語法 B.C語言的子程序有過程和函數(shù)兩種 C.C語言的函數(shù)可以嵌套定義 D.C語言的函數(shù)可以嵌套調(diào)用分析:C語言相對其他高級語言來說,放寬了語法檢查,因此程序設(shè)計自由度大,并不是不檢查語法,C語言的程序是由函數(shù)構(gòu)成的。函數(shù)不能嵌套定義,但是可以嵌套調(diào)用。12.以下敘述中正確的是( ) A.構(gòu)成C程序的基本單位是函數(shù) B.可以在一個函數(shù)中定義另一個函數(shù) C.main()函數(shù)必須放在其他函數(shù)之前 D.所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定義分析:本題綜合考查C語言概念部分,關(guān)于C語言,我們應(yīng)該了解以下必須要掌握的基礎(chǔ)知識:C程序是由函數(shù)

7、構(gòu)成的。一個函數(shù)由兩部分組成:函數(shù)的首部和函數(shù)體。一個C程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)的整個程序中的位置如何(main函數(shù)可以放在程序最開始,也可以放在程序最后,或?qū)懺谝恍┖瘮?shù)之前,在另一些函數(shù)之后)。C程序在書寫上,表現(xiàn)形式比較自由,一行內(nèi)可以寫幾個語句,一個語句可以分寫在幾行上。每個語句和數(shù)據(jù)定義的最后必須有一個分號。C程序本身沒有輸入輸出語句。輸入和輸出的操作是由庫函數(shù)scanf和printf等函數(shù)來完成。可以用/*/對C語言的程序的任何部分作注釋。13.下列程序段的輸出結(jié)果是( )int a=1234;float b=123.456;double c=12345.

8、54321;printf(%2d,%2.1f,%2.1f,a,b,c); A.無輸出 B.12,123.5,12345.5 C.1234,123.5,12345.5 D.1234,123.4,1234.5分析:printf函數(shù)的浮點數(shù)缺省輸出格式:在printf函數(shù)的輸出中,若無輸出寬度限制,每種數(shù)據(jù)都有一個缺省的輸出寬度,一般浮點數(shù)的小數(shù)位數(shù)是6位,不管輸出格式是%f或%1f皆如此。printf函數(shù)的浮點數(shù)寬度限制輸出:小數(shù)部分按指定數(shù)輸出,且對數(shù)據(jù)做四舍五入處理。printf的整數(shù)限寬輸出:沒有寬度制的整數(shù)原數(shù)輸出。14.設(shè)有以下程序段int x=0,s=0;while(!x!=0)s+=

9、+x;printf(%d,s);則( ) A.運行程序段后輸出0 B.運行程序段后輸出1 C.程序段中的控制表達式是非法的 D.程序段執(zhí)行無限次分析:本題中,“!”表示邏輯非運算符,“!=”等于運算符,邏輯非運算符比等于運算符的優(yōu)先級低。15.以下程序段的描述,正確的是( )x=-1;dox=x*x;while(!x); A.是死循環(huán) B.循環(huán)執(zhí)行兩次 C.循環(huán)執(zhí)行一次 D.有語法錯誤分析:do-while語句的一般形式為:do循環(huán)語句while(表達式);本題中,執(zhí)行“語句”一次后,表達式值為假,終止執(zhí)行。16.下列程序執(zhí)行后的輸出結(jié)果是( )void func1(int i);void f

10、unc2(int i);char st =hello,friend!;void func1(int i) printf(%c,sti); if(i3)i+=2;func2(i);void func2(int i) printf(%c,sti); if(i3)i+=2;func1(i);main() int i=0;func1(i);printf(n); A.hello B.hel C.hlo D.hlm分析:函數(shù)調(diào)用的一般形式為: 函數(shù)名(實參列表)首先調(diào)用函數(shù)func1(0),輸出st0=h。i值變?yōu)?,并調(diào)用函數(shù)func2(2),輸出st2=1。i值此時變?yōu)?,調(diào)用函數(shù)func1(4),輸

11、出st4=o。此時i值大于等于3,執(zhí)行完畢。因此,輸出結(jié)果為hlo。17.以下程序的輸出結(jié)果是( )#include void prt(int *x,int*y,int*z) printf(%d,%d,%dn,+*x,+*y,*(z+);main() int a=10,b=40,c=20; prt(&a,&b,&c); prt(&a,&b,&c); A.11,42,31 12,42,20 B.11,41,20 12,22,41 C.11,21,40 12,42,22 D.11,41,21 11,21,21分析:盡管C語言以傳值方式進行函數(shù)調(diào)用,但也可以通過傳遞指針的值(變量的地址)來達到修改實

12、參變量值的目的,這是此題主要說明的問題。其次是要應(yīng)注意表達式*(z+)的值是*z。函數(shù)調(diào)用,由于x,y和z分指向a,b和c,因此,*x,*y和*z就是a,b和c。第一次調(diào)用函數(shù)時,*x=a=10,*y=b=40,*z=c=20輸出結(jié)果為11,41,20,至此,已經(jīng)可以肯定選項B是正確的。在第一次輸出后,a=11,b=41,c=20第二次輸出為:12,42,20。18.下列程序執(zhí)行后的輸出結(jié)果是( )main() int a33,*p,i; p=&a00; for(i=1;i9;i+)pi=i+1; printf(%dn,a12); A.3 B.6 C.9 D.隨機數(shù)分析:本題中,a12是二維數(shù)

13、組中的第6個元素,對應(yīng)for循環(huán)中i的值為5,p5=5+1。19.下列程序執(zhí)行后的輸出結(jié)果是( )main() char arr24; strcpy(arr,you);strcpy(arr1,me); arr03=&; printf(sn,arr); A.you&me B.you C.me D.err分析:函數(shù)strcpy的功能是字符串拷貝,用法char *strcpy(char *str1,char *str2),作用是將字符串2復(fù)制到字符串1中去。二維數(shù)組可以看做是一種特殊的一維數(shù)組,它的元素又是一個一維數(shù)組。本題把arr看做是一個一維數(shù)組,它有兩個元素:arr0,arr1,每個元素又是一

14、個包含4個元素的一維數(shù)組。20.有以下程序int f(int n) if(n=1)return 1; else return f(n-1)+1;main() int i,j=0; for(i=1;i3;i+)j+=f(i); printf(%dn,j);程序運行后的輸出結(jié)果是( ) A.4 B.3 C.2 D.1分析:在main函數(shù)中,對f(1)和f(2)的值進行了累加。f(1)=1f(2)=f(1)+1=2最后,j的值為1+2=321.對結(jié)構(gòu)體類型變量的定義,不正確的是( ) A.typedef struct aa B.#define AA struct aa int n; AA int n

15、; float m; float m; AA; tdl; AA tdl; C.struct D.struct int n; int n; float m; float m; aa; tdl; struct aa tdl;分析:定義結(jié)構(gòu)體類型的變量有幾種的方法如下:定義結(jié)構(gòu)體類型的同時,定義結(jié)構(gòu)體類型的變量,如下面的定義中在定義結(jié)構(gòu)體類型aa的同時定義了該類型的變量td1。上述選項B中將宏名AA用宏體struct aa替換進去后,與該定義形式一樣,因此是正確的。這一定義形式中,結(jié)構(gòu)體類型名aa是可以省略的,因此,選項D也是正確的。struct aa tdl;先定義結(jié)構(gòu)體類型,然后再定義結(jié)構(gòu)體類型

16、的變量,形式如下:struct aa ;struct aa tdl;這種定義形式也可演變?yōu)椋扔妙愋投x語句typedef將該結(jié)構(gòu)體類型定義成一個類型名AA,然后直接用該類型名AA去定義一個變量(這時不再需要使用關(guān)鍵字struct了)。這就是選項A的形式。22.若有以下程序#include void f(int n);main() void f(int n); f(5);void f(int n) printf(%dn,n);則以下敘述中不正確的是( ) A.若只在主函數(shù)中對函數(shù)f進行說明,則只能在主函數(shù)中正確調(diào)用函數(shù)f B.若在主函數(shù)前對函數(shù)f進行說明,則在主函數(shù)和其后的其他函數(shù)中都可以正確

17、調(diào)用函數(shù)f C.對于以上程序,編譯時系統(tǒng)會提示出錯信息:提示對f函數(shù)重復(fù)說明 D.函數(shù)f無返回值,所以可用void將其類型定義為無返回值型分析:C語言規(guī)定,一個函數(shù)中調(diào)用另一個函數(shù)(即被調(diào)用函數(shù))需要具備的條件有:首先被調(diào)用的函數(shù)必須是已經(jīng)存在的函數(shù)(是庫函數(shù)或用戶自己定義的函數(shù))。如果使用庫函數(shù),一般還應(yīng)該在本文件開頭用#include命令將函數(shù)調(diào)用有關(guān)庫函數(shù)時所需要到的信息“包含”到本文件中來。如果使用自定義函數(shù),而且該函數(shù)與調(diào)用它的函數(shù)在同一個文件中,一般還應(yīng)該在主調(diào)函數(shù)中對被調(diào)用的函數(shù)作聲明,即向編譯系統(tǒng)聲明將要調(diào)用此函數(shù),并將有關(guān)信息通知編譯系統(tǒng)。23.有以下程序#include m

18、ain() FILE *fp;int i=20,j=30,k,n; fp=fopen(d1.dat,w); fprintf(fp,%dn,i);fprintf(fp,%dn,j); fclose(fp); fp=fopen(d1.dat,r); fscanf(fp,%d%d,&k,&n);printf(%d%dn,k,n); fclose(fp);程序運行后的輸出結(jié)果是( ) A.20 30 B.20 50 C.30 50 D.30 20分析:本題中,最主要的是掌握幾個有關(guān)文件的函數(shù)的應(yīng)用。函數(shù)fopen的功能:打開一個文件 調(diào)用方式FILE *fp;fp=fopen(文件名,使用文件方式);

19、函數(shù)fprintf的功能:傳送格式化輸出到一個文件中 調(diào)用方式:fprintf(文件指針,格式字符串,輸出表列);函數(shù)fclose的功能:關(guān)閉一個文件 調(diào)用方式:fclose(文件指針);函數(shù)fscanf的功能:從磁盤文件執(zhí)行格式化輸入 調(diào)用方式:fscanf(文件指針,格式字符串,輸入表列)。24.下面4個選項中,均是不合法的用戶標識符的選項是( ) A.A P_0 B.float la0 _A C.b-a goto int D._123 temp int分析:C語言規(guī)定的標識符只能由字母、數(shù)字和下劃線3種字符組成,第一個字符必須為字母或下劃線,并且不能使用C語言中的關(guān)鍵字作為標識符。選項C

20、中g(shù)oto和int是關(guān)鍵字,b-a中-不是組成標識符的3種字符之一,選項D中int是關(guān)鍵字。所以,均是不合法用戶標識符的選項是C。25.能正確表示邏輯關(guān)系:“a10或a0”的C語言表達式是( ) A.a=10 or a=0a=10 &a=10a=0分析:本題考查是C語言的邏輯表達式及邏輯或(“”)運算符的用法。“”表示或的意思,“”是按位或的意思,“&”是并且的意思,C語言中沒有“or”。26.若有說明:int *p,m=5,n;以下正確的程序段是( ) A.p=&n;scanf(%d,&p;) B.p=&n;scanf(%d,*p) C.scanf(%d,&n);*p=n; D.p=&n;*p=m;分析:“&”是求址運算符,“*”是變量說明符。選項A和B應(yīng)改為scanf(“%d”,p);選項C中指針變量p未指向一確定的內(nèi)存單元,不能為其賦值,并且這樣做很危險建議不使用。27.有如下程序main() int a=2,b=-1,c=2; if(ab) i

溫馨提示

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

評論

0/150

提交評論