全國計算機等級考試二級C語言程序設計_第1頁
全國計算機等級考試二級C語言程序設計_第2頁
全國計算機等級考試二級C語言程序設計_第3頁
全國計算機等級考試二級C語言程序設計_第4頁
全國計算機等級考試二級C語言程序設計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、全國計算機等級考試二級C語言程序設計一、選擇題(1)(10)、( 21)(40)每題2分,(11)(20)每題2分,共70分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上, 答在試卷上不得分。(1)下列選項中不符合良好程序設計風格的是A)源程序要文檔化B)數(shù)據(jù)說明的次序要規(guī)范化Q 避免濫用goto語句 DD 模塊設計要保證高耦合、高內(nèi)聚(2)從工程管理角度,軟件設計一般分為兩步完成,它們是A)概要設計與詳細設計B)數(shù)據(jù)設計與接口設計Q 軟件結(jié)構設計與數(shù)據(jù)設計D)過程設計與數(shù)據(jù)設計(3)下列選項中不屬于軟件生命周期開發(fā)階段任務的是A )軟件測

2、試B)概要設計C)軟件維護D)詳細設計(4)在數(shù)據(jù)庫系統(tǒng)中,用戶所見的數(shù)據(jù)模式為A )概念模式B)外模式C)內(nèi)模式D)物理模式(5)數(shù)據(jù)庫設計的四個階段是:需求分析、概念設計、邏輯設計和A)編碼設計B)測試階段C)運行階段D)物理設計(6)設有如下三個關系表R A m nBC13SABCm13n13T卜列操作中正確的是A T=Rn SB) T= RU SQ T=RX SDD T= R/S( 7)下列敘述中正確的是A )一個算法的空間復雜度大,則其時間復雜度也必定大B )一個算法的空間復雜度大,則其時間復雜度必定小C )一個算法的時間復雜度大,則其空間復雜度必定小DD上述三種說法都不對( 8)在

3、長度為64 的有序線性表中進行順序查找,最壞情況下需要比較的次數(shù)為A) 63B) 64C) 6D) 7( 9)數(shù)據(jù)庫技術的根本目標是要解決數(shù)據(jù)的A)存儲問題B)共享問題C)安全問題D)保護問題( 10)對下列二叉樹進行中序遍歷的結(jié)果是A) ACBDFEG B) ACBDFGE C) ABDCGEF D) FCADBEG( 11)下列敘述中錯誤的是A 一個C語言程序只能實現(xiàn)一種算法B) C 程序可以由多個程序文件組成C) C 程序可以由一個或多個函數(shù)組成D) 一個C函數(shù)可以單獨作為一個 C程序文件存在( 12)下列敘述中正確的是A每個C程序文件中都必須要有一個main()函數(shù)B)在C程序中mai

4、n()函數(shù)的位置是固定的C) C 程序中所有函數(shù)之間都可以相互調(diào)用,與函數(shù)所在位置無關D)在C程序的函數(shù)中不能定義另一個函數(shù)13)下列定義變量的語句中錯誤的是A) int _int;B) double int_;C ) char For;D ) float US$;(14)若變量x、y已正確定義并賦值,以下符合C語言語法的表達式是A) +x,y=x-B) x+1=yC ) x=x+10=x+y D ) double(x)/10( 15)以下關于邏輯運算符兩側(cè)運算對象的敘述中正確的是A)只能是整數(shù)0或1B )只能是整數(shù)0或非0整數(shù)C)可以是結(jié)構體類型的數(shù)據(jù)D )可以是任意合法的表達式( 16)

5、若有定義int x,y; 并已正確給變量賦值,則以下選項中與表達式(x-y)?(x+) : (y+) 中的條件表達式(x-y) 等價的是C ) (x-y<0|x-y>0) D ) (x-y=0)A) (x-y>0)B) (x-y<0)( 17)有以下程序main() int x, y, z;x=y=1;z=x+,y+,+y;printf("%d,%d,%dn",x,y,z);程序運行后的輸出結(jié)果是A) 2,3,3B) 2,3,2C ) 2,3,1D) 2,2,118)設有定義:int a; float b;執(zhí)行 scanf("%2d%f&q

6、uot;,&a,&b); 語句時,若從鍵盤輸入876 543.0<>, a 和 b 的值分別是A) 876 和 543.000000C) 87 和 543.000000B ) 87 和 6.000000D ) 76 和 543.00000019)有以下程序main()A) a+b=10B) a+b=30C) 30(20)在嵌套使用if語句時,C語言規(guī)定else總是/* int a=0, b=0;a=10;/*b=20;printf("a+b=%dn",a+b);程序運行后的輸出結(jié)果是給a 賦值給b 賦值*/輸出計算結(jié)果*/D )出錯A和之前與其具

7、有相同縮進位置的if配對B)和之前與其最近的if配對C)和之前與其最近的且不帶else的if配對D)和之前的第一個if配對21)下列敘述中正確的是A) break 語句只能用于switch 語句B)在switch語句中必須使用 defaultC) break 語句必須與switch 語句中的case 配對使用D)在switch 語句中,不一定使用 break語句22)有以下程序main() int k=5;while(-k) printf("%d",k -= 3);printf("n");執(zhí)行后的輸出結(jié)果是A) 1B) 2C) 4D )死循環(huán) ( 23)

8、有以下程序main() int i;for(i=1; i<=40; i+) if(i+%5=0)if(+i%8=0) printf("%d ",i);printf("n");執(zhí)行后的輸出結(jié)果是C ) 32D ) 40C ) '1' -0D)'0' - '0'A) 5B) 24( 24)以下選項中,值為1 的表達式是A 1 - 'O'B ) 1 - ''0'( 25)有以下程序fun(int x, int y) return (x+y); main() int a

9、=1, b=2, c=3, sum;sum=fun(a+,b+,a+b),c+);printf("%dn",sum);執(zhí)行后的輸出結(jié)果是A) 6B) 7C ) 8D ) 926)有以下程序main() char s="abcde"s+=2;printf("%dn",s0);執(zhí)行后的結(jié)果是B)輸出字符c的ASCII碼D)程序出錯A輸出字符a的ASCII碼C)輸出字符c( 27)有以下程序fun(int x, int y) static int m=0, i=2;i+=m+1; m=i+x+y; return m;main() int j

10、=1, m=1, k;k=fun(j,m); printf("%d,",k);k=fun(j,m); printf("%dn",k);執(zhí)行后的輸出結(jié)果是A)5, 5B) 5, 11C) 11, 11D) 11, 528)有以下程序fun(int x) int p;if(x=0|x=1) return(3);p=x-fun(x-2);return p;main() printf("%dn",fun(7); 執(zhí)行后的輸出結(jié)果是A) 7B) 3C) 2D) 0p+; 后,下列說法錯誤的是29)在 16位編譯系統(tǒng)上,若有定義int a=10,

11、20,30, *p=&a;B) p 向高地址移了一個存儲單元D) p 與 a+1 等價A) p 向高地址移了一個字節(jié)C) p 向高地址移了兩個字節(jié)30)有以下程序main() int a=1, b=3, c=5;int *p1=&a, *p2=&b, *p=&c;*p =*p1*(*p2);printf("%dn",c);執(zhí)行后的輸出結(jié)果是A) 1B) 2C) 3D) 431)若有定義:int w35;,則以下不能正確表示該數(shù)組元素的表達式是A) *(*w+3)B) *(w+1)4( 32)若有以下函數(shù)首部int fun(double x10

12、, int *n)則下面針對此函數(shù)的函數(shù)聲明語句中正確的是A) int fun(double x, int *n);C) int fun(double *x, int n);( 33)有以下程序void change(int k ) k0=k5; main() int x10=1,2,3,4,5,6,7,8,9,10,n=0;while( n<=4 ) change( &xn) ; n+; for(n=0; n<5; n+) printf("%d ",xn);printf("n");程序運行后輸出的結(jié)果是A) 6 7 8 9 10B)

13、 1 3 5 7 9( 34)有以下程序C) *(*(w+1)D) *(&w00+1)B) int fun(double , int );D) int fun(double *, int *);C) 1 2 3 4 5D) 6 2 3 4 5main() int x32=0, i;for(i=0; i<3; i+) scanf("%d",xi);printf("%3d%3d%3dn",x00,x01,x10);若運行時輸入:2 4 6< 回車>,則輸出結(jié)果為A) 2 0 0B) 2 0 4C) 2 4 0D) 2 4 6( 35

14、)有以下程序int add( int a,int b) return (a+b); main() int k, (*f)(), a=5,b=10;f=add;則以下函數(shù)調(diào)用語句錯誤的是A) k=(*f)(a,b);B) k=add(a,b);C) k= *f(a,b);D) k=f(a,b);( 36)有以下程序#includemain( int argc, char *argv ) int i=1,n=0;while (iprintf("%dn",n);該程序生成的可執(zhí)行文件名為:proc.exe 。若運行時輸入命令行:proc 123 45 67則程序的輸出結(jié)果是A)

15、3B) 5C) 7D) 1137)有以下程序# include# define N 5# define M N+1# define f(x) (x*M)main()# int i1, i2;11 = f(2) ;12 = f(1+1) ;printf("%d %dn", i1, i2);程序的運行結(jié)果是A) 12 12B) 11 7C) 11 11D) 12 7( 38)有以下結(jié)構體說明、變量定義和賦值語句struct STD char name10;int age;char sex; s5,*ps;ps=&s0;則以下 scanf 函數(shù)調(diào)用語句中錯誤引用結(jié)構體變量

16、成員的是A) scanf("%s",);B ) scanf("%d",&s0.age);C) scanf("%c",&(ps->sex);D ) scanf("%d",ps->age);( 39)若有以下定義和語句union data int i; char c; float f; x;int y;則以下語句正確的是A) x=10.5;B) x.c=101;C) y=x;D) printf("%dn",x);( 40)有以下程序#includemain(

17、) FILE *fp; int i;char ch="abcd",t;fp=fopen("abc.dat","wb+");for(i=0; i<4; i+) fwrite(&chi,1,1,fp);fseek(fp,-2L,SEEK_END);fread(&t,1,1,fp);fclose(fp);printf("%cn",t);程序執(zhí)行后的輸出結(jié)果是A) dB) cC) bD) a二、填空題(每空2 分,共 30 分)請將每一個空的正確答案寫在答題卡【1】至【15】序號的橫線上,答在試卷上不

18、得分。( 1)下列軟件系統(tǒng)結(jié)構圖的寬度為 【1】。(2) 【2】的任務是診斷和改正程序中的錯誤。(3) 一個關系表的行稱為【3】。(4)按“先進后出”原則組織數(shù)據(jù)的數(shù)據(jù)結(jié)構是【4】。(5)數(shù)據(jù)結(jié)構分為線性結(jié)構和非線性結(jié)構,帶鏈的隊列屬于【5】。(6)設有定義:float x=123.4567;,則執(zhí)行以下語句后的輸出結(jié)果是6】。printf("%fn",(int)(x*100+0.5)/100.0);(7)以下程序運行后的輸出結(jié)果是7】。main() int m=011,n=11;printf("%d %dn”,+m, n+);(8)以下程序運行后的輸出結(jié)果是8】

19、。main() int x,a=1,b=2,c=3,d=4;x=(a? x=(x? x=(d>x) ? x : d;printf("%dn",x);(9)有以下程序,若運行時從鍵盤輸入:18,11回車,則程序的輸出結(jié)果是9】main() int a,b;printf("Enter a,b:"); scanf("%d,%d",&a,&b);while(a!=b) while(a>b) a -= b;while(b>a) b -= a;printf("%3d%3dn",a,b);(10

20、)以下程序的功能是:將輸入的正整數(shù)按逆序輸出。例如:若輸入 135則輸出531。請?zhí)羁铡?#includemain() int n,s;printf("Enter a number : "); scanf("%d",&n);printf("Output:");do s=n%10; printf("%d",s);【10;while(n!=0);printf("n");(11)以下程序中,函數(shù) fun的功能是計算x2-2x+6,主函數(shù)中將調(diào)用fun函數(shù)計算:y1=(x+8) 2-2 (x+8)+6y2=sin 2(x)-2sin(x)+6請?zhí)羁铡?include "math.h"double fun(double x) return (x*x-2*x+

溫馨提示

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

評論

0/150

提交評論