




已閱讀5頁,還剩93頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2005 年 4 月全國計(jì)算機(jī)等級考試二級筆試試卷 (考試時間 120 分鐘,滿分 100 分) 一、選擇題( ( 1) -( 10)每小題 2 分,( 11) -( 50)每小題 1 分,共 60 分 ) ( 1)數(shù)據(jù)的存儲結(jié)構(gòu)是指( )。 A)存儲在外存中的數(shù)據(jù) B)數(shù)據(jù)所占的存儲空間量 C)數(shù)據(jù)在計(jì)算機(jī)中的順序存儲方式 D)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示 ( 2)下列關(guān)于棧的描述中錯誤的是( )。 A)棧是先進(jìn)后出的線性表 B)棧只能順序存儲 C)棧具有記憶作用 D)對棧的插入與刪除操作中,不需要改變棧底指針 ( 3)對于長度為 n 的 線性表,在最壞情況下,下列各排序法所對應(yīng)的比較次數(shù)中正確的是 ( )。 A)冒泡排序 n/2 B)冒泡排序?yàn)?n C)快速排序?yàn)?n D)快速排序?yàn)?n(n-1)/2 ( 4)對于長度為 n 的線性表進(jìn)行順序查找,在最壞情況下所需要的比較次數(shù)為( )。 A) log2n B) n/2 C) n D) n+1 ( 5)下列對于線性鏈表的描述中正確的是( )。 A)存儲空間不一定是連續(xù),且各元素的存儲順序是任意的 B)存儲空間不一定是連續(xù),且前件元素一定存儲在后件元素的前面 C)存儲空間必須連續(xù),且前件元素一定存儲在后件元素的前面 D)存儲空間必須連續(xù),且各元素的存儲順序是任意的 ( 6)下列對于軟件測試的描述中正確的是( )。 A)軟件測試的目的是證明程序是否正確 B)軟件測試的目的是使程序運(yùn)行結(jié)果正確 C)軟件測試的目的是盡可能多地發(fā)現(xiàn)程序中的錯誤 D)軟件測試的目的是使程序符合結(jié)構(gòu)化原則 ( 7)為了使模塊盡可能獨(dú)立,要求( )。 A)模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量強(qiáng) B)模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量弱 C)模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量弱 二級 C 語言程序設(shè)計(jì)試卷 第 2 頁(共 13 頁) D)模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量強(qiáng) ( 8)下列描述中正確的是( )。 A)程序就是軟件 B)軟件開發(fā)不受計(jì)算機(jī)系統(tǒng)的限制 C)軟件既是邏輯實(shí)體,又是物理實(shí)體 D)軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合 ( 9)數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫技術(shù)的重要特點(diǎn)之一。所謂數(shù)據(jù)獨(dú)立性是指( )。 A)數(shù)據(jù)與程序獨(dú)立存放 B)不同的數(shù)據(jù)被存放在不同的文件中 C)不同的數(shù)據(jù)只能被對應(yīng)的應(yīng)用程序所使用 D)以上三種說法都不對 ( 10)用樹形結(jié)構(gòu)表示實(shí)體之間聯(lián)系的模型是( )。 A)關(guān)系模型 B)網(wǎng)狀 模型 C)層次模型 D)以上三個都是 ( 11)算法具有 5 個特性,下列選項(xiàng)中不屬于算法特性的是( )。 A)有窮性 B)簡潔性 C)可行性 D)確定性 ( 12)下列選項(xiàng)中可作為 C 語言合法常量的是( )。 A) -80 B) -080 C) -8e1.0 D) -80.0e ( 13)下列敘述中正確的是( )。 A)用 C 程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作 B)用 C 程序?qū)崿F(xiàn)的算法可以沒有輸出但必須要有輸入 C)用 C 程序?qū)崿F(xiàn)的算法可以沒有輸入但必須要有輸出 D)用 C 程序?qū)崿F(xiàn)的算法可以既沒有輸入也沒有輸出 ( 14)下列不能定義的用戶標(biāo)識符是( )。 A) Main B) _0 C) _int D) sizeof ( 15)下列選項(xiàng)中,不能作為合法常量的是( )。 A) 1.234e04 B) 1.234e0.4 C) 1.234e+4 D) 1.234e0 ( 16)數(shù)字字符 0 的 ASCII 值為 48,運(yùn)行下列程序的輸出結(jié)果是( )。 main( ) char a=1,b=2; printf(%c, b+ +); 二級 C 語言程序設(shè)計(jì)試卷 第 3 頁(共 13 頁) printf(%dn, b-a) A) 3,2 B) 50,2 C) 2,2 D) 2,50 ( 17)下列程序的輸出結(jié)果是( )。 main( ) int m=12, n=34; printf(%d%d, m+ +,+ +n); printf(%d%dn,n+ +,+ +m); A) 12353514 B) 12353513 C) 12343514 D) 12343513 ( 18)有定義語句: int b; char c10;,則正確的輸入語句是( )。 A) scanf(%d%s,&b,&c); B) scanf(%d%s,&b,c); C) scanf(%d%s,b,c); D) scanf(%d%s,b,&c); ( 19)有下列程序: main( ) int m,n,p; scanf(m=%dn=%dp=%d,&m,&n,&p); printf(%d%d%dn,m,n,p); 若想從鍵盤上輸入數(shù)據(jù),使變量 m 中的值為 123, n 中的值為 456, p 中的值為 789, 則正確的輸入是( )。 A) m=123 n=456 p=789 B) m=123 n=456 p=789 C) m=123,n=456,p=789 D) 123 456 789 ( 20)下列程序的輸出結(jié)果是( )。 main( ) int a,b,d=25; a= d/10%9; b=a&(-1); printf(%d,%dn,a,b); A) 6,1 B) 2,1 C) 6,0 D) 2,0 ( 21)下列程序的輸出結(jié)果是( )。 main( ) int i=1,j=2,k=3; if(i+ + = =1&(+ +j= =3 k+ + = =3) printf(%d %d %dn,i,j,k); A) 1 2 3 B) 2 3 4 二級 C 語言程序設(shè)計(jì)試卷 第 4 頁(共 13 頁) C) 2 2 3 D) 2 3 3 ( 22)若整型變量 a、 b、 c、 d 中的值依次為: 1、 4、 3、 2。則條件表達(dá)式 ay?x y; int f2(int x,int y)return xy?y x; main( ) int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d); f=f1(f2(a,b),f2(c,d); g=a+b+c+d-e-f; printf(%d,%d,%dn,e,f,g); A) 4,3,7 B) 3,4,7 C) 5,2,7 D) 2,5,7 ( 27)已有定義: char a =xyz,b =x, y, z;,下列敘述中正確的是( )。 二級 C 語言程序設(shè)計(jì)試卷 第 5 頁(共 13 頁) A)數(shù)組 a 和 b 的長度相同 B) a 數(shù)組長度小于 b 數(shù)組長度 C) a 數(shù)組長度大于 b 數(shù)組長度 D)上述說法都不對 ( 28)下列程序的輸出結(jié)果是( )。 void f(int *x, int *y) int t; t=*x,*x=*y;*y=t; main( ) int a8=1,2,3,4,5,6,7,8,i,*p,*q; p=a;q=&a7; while(pn;i-)ai+1=ai main( ) int i,aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;i的輸出結(jié)果為( )。 main( ) int a32=0,(*ptr)2,i,j; for(i=0;i=8) break; 二級 C 語言程序設(shè)計(jì)試卷 第 8 頁(共 13 頁) if(a%2= =1) a+ =5; continue; a=3; printf(%dn,b); A) 3 B) 4 C) 5 D) 6 ( 42)下列程序的輸出結(jié)果是( )。 main( ) char s =159,*p; p=s; printf(%c,*p+ +); printf(%c,*p+ +); A) 15 B) 16 C) 12 D) 59 ( 43)有下列函數(shù): fun(char *a,char *b) while(*a! =0)&(*b! = 0)&(*a= =*b) a+ +; b+ +; return(*a-*b); 該函數(shù)的功能是( )。 A)計(jì)算 a 和 b 所指字符串的長度之差 B)將 b 所指字符串復(fù)制到 a 所指字符串中 C)將 b 所指字符串連接到 a 所指字符串后面 D)比較 a 和 b 所指字符串的大小 ( 44)有下列程序: main( ) int num44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i,j; for(i=0;inext=q-next; B) p-next=p-next-next; C) p-next=r; D) p=q-enxt; ( 48)下列對結(jié)構(gòu)體類型變量 td 的定義中,錯誤的是( )。 A) typedef struct aa B) struct aa int n; int n; 二級 C 語 言程序設(shè)計(jì)試卷 第 10 頁(共 13 頁) float m; float m; AA; td; AA td; struct aa td; C) struct D) struct int n; int n; float m; float m; aa; td; struct aa td; ( 49)下列與函數(shù) fseek(fp,0L,SEEK_SET)有相同作用的是( )。 A) feof(fp) B) ftell(fp) C) fgetc(fp) D) rewind(fp) ( 50)有下列程序: #include void WriteStr(char *fn,char *str) FILE *fp; fp=fopen(fn,w); fputs(str,fp); fclose(fp); main( ) WriteStr(t1.dat,start); WriteStr(t1.dat,end); 程序運(yùn)行后,文件 t1.dat 中的內(nèi)容是( )。 A) start B) end C) startend D) endrt 二、填空題(每空 2 分,共 40 分) ( 1)某二叉樹 中度為 2 的結(jié)點(diǎn)有 18 個,則該二叉樹中有 【 1】 個葉子結(jié)點(diǎn)。 ( 2)在面向?qū)ο蠓椒ㄖ?,類的?shí)例稱為 【 2】 。 ( 3)診斷和改正程序中錯誤的工作通常稱為 【 3】 。 ( 4)在關(guān)系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,每一個二維表稱為 【 4】 。 ( 5)問題處理方案正確而完整的描述稱為 【 5】 。 ( 6)下列程序運(yùn)行時若從鍵盤輸入: 10 20 30。輸出結(jié)果是 【 6】 。 #include main( ) int i=0, j=0, k=0; scanf(%d%*d%d,&i,&j,&k); printf(%d%d%dn,i,j,k); 二級 C 語言程序設(shè)計(jì)試卷 第 11 頁(共 13 頁) ( 7)下列程序運(yùn)行后的輸出結(jié)果是 【 7】 。 #define S(x) 4*x*x+1 main( ) int i=6, j=8; printf(%dn,S(i+j); ( 8)下列程序運(yùn)行后的輸出結(jié)果是 【 8】 。 main( ) int a=3,b=4,c=5,t=99; if(b1); printf(%d %d %dn,a,b,c); ( 10)下列程序運(yùn)行后的輸出結(jié)果是 【 10】 。 main( ) char c1,c2; for(c1=0,c2=9;c1。則輸 出結(jié)果是 【 11】 。 #include main( ) char a,b; a=getchar( );scanf(%d, &b); a=a-A+0; b=b*2; printf(%c %cn,a,b); ( 12)下列程序中, fun()函數(shù)的功能是求 3 行 4 列二維數(shù)組每行元素中的最大值。請?zhí)羁铡?void fun(int, int, int(*)4,int*); main( ) int a34=12,41,36,28,19,33,15,27,3,27,19,1,b3,i; fun(3,4,a,b); for(i=0;i void fun(char *s, int p, int k) int i; for(i=p;i main( ) char ch =abc,x34; int i; for(i=0;ik=+ +i; p+ +; q-k=i+ +; q-; q-k=i; for(i=0;i char*huiwen(char *str) char *p1,*p2; int i,t=0; p1=str; p2= 【 18】 ; for(i=0);i main( ) char c1=1,c2=2; c1=getchar( ); c2=getchar( ); putchar(c1); putchar(c2); 當(dāng)運(yùn)行時輸入 :a后,下列敘述正確的是( )。 A)變量 c1 被賦予字符 a,c2 被賦予回車符 B)程序?qū)⒌却脩糨斎氲?2 個字符 C)變量 c1 被賦予字符 a,c2 中仍是原有字符 2 D)變量 c1 被賦予字符 a, c2 中將無確定值 ( 36)有下列程序: main( ) int k=5,n=0; while(k 0) switch(k) default:break; case 1: n+ =k; case 2: case 3: n+ =k; k-; printf(%dn,n); 程序運(yùn)行后的輸出結(jié)果是( )。 A) 0 B) 4 C) 6 D) 7 ( 37)有下列程序: main( ) 二級 C 語言程序設(shè)計(jì)試卷 第 6 頁( 共 13 頁) int a =2,4,6,8,10,y=0,x,*p; p=&a1; for(x=1;x main( ) char p =a, b, c,q10= a, b, c; printf(%d%dn,strlen(p),strlen(q); 下列敘述中正確的是( )。 A)在給 p 和 q 數(shù)組賦初值時,系統(tǒng)會自動添加字符串結(jié)束符,故輸出的長度都為 3 B)由于 p 數(shù)組中沒有字符串結(jié)束符,長度不能確定,但 q 數(shù)組中字符串長度為 3 C)由于 q 數(shù)組中沒有字符串結(jié)束符,長度不能確定,但 p 數(shù)組中字符串長度為 3 D)由于 p 和 q 數(shù) 組中都沒有字符串結(jié)束符,故長度都不能確定 ( 42)有下列程序,其中函數(shù) f()的功能是將多個字符串按字典順序排序( )。 #include void f(char *p ,int n) char *t; int i,j; for(i=0;i0)t=pi; pi=pj, pj=t; main( ) char *p5=abc,aabdfg,abbd,dcdbe,cd; f(p,5); printf(%dn,strlen(p1); 程序運(yùn)行后的輸出結(jié)果是( )。 A) 2 B) 3 C) 6 D) 4 ( 43)有下列程序: #include void f(char *s,char *t) char k; k=*s; *s=*t; *t=k; s+ +; t-; if(*s) f(s,t); main( ) char str10=abcdefg,*p; p=str+strlen(str)/2+1; f(p,p-2); 二級 C 語言程序設(shè)計(jì)試卷 第 8 頁(共 13 頁) printf(%sn,str); 程序運(yùn)行后的輸出結(jié)果是( )。 A) abcdefg B) gfedcba C) gbcdefa D) abedcfg ( 44)有下列程序: float fl(float n) return n*n; float f2(float n) return 2*n; main( ) float (*p1)(float),(*p2)(float),(*t)(float),y1,y2; p1=f1; p2=f2; y1=p2(p1(2.0); t=p1; p1=p2; p2=t; y2=p2(p1(2.0); printf(%3.0f, %3.0fn,y1,y2); 程序運(yùn)行后的輸出結(jié)果是( )。 A) 8, 16 B) 8, 8 C) 16, 16 D) 4, 8 ( 45)有下列程序: int a=2; int f(int n) static int a=3; int t=0; if(n%2) static int a=4; t+ =a+ +; else static int a=5; t+ =a+ +; returnt+a+ +; main( ) int s=a,i; for(i=0;i struct STU int num; float TolalScorc; ; void f(structSTU p) struct STU s2=20044,550,20045,537; p.num=s1.num; p.TotalScore=s1.TotalScore; 二級 C 語言程序設(shè)計(jì)試卷 第 9 頁(共 13 頁) main( ) struct STU s2=20041,703,20042,580; f(s0); printf(%d %3.0fn,s0. num,s0. TotalScore); 程序運(yùn)行后的輸出結(jié)果是( )。 A) 20045 537 B) 20044 550 C) 20042 580 D) 20041 703 ( 47)有下列程序: #include struct STU char name10; int num; ; void f(char *name,int num) struct STU s2=SunDan,20044,Penghua,20045; num=s0.num; strcpy(name,); main( ) struct STU s2=YangSan,2004,LiSiGuo,20042,*p; p=&s1; f(p-name,p-num); printf(%s %dn, p-name,p-num); 程序運(yùn)行后的輸出結(jié)果是( )。 A) SunDan 20042 B) SunDan 20044 C) LiSiGuo 20042 D) YangSan 20041 ( 48)有下列程序: struct STU char name10; int num; float TotalScore; ; void f(struct STU *p) struct STU s2=SunDan,20044,550, Penghua,20045,537, *q=s;+ +p; + +q; *p=*q; main( ) struct STU s3=YangSan,20041,703,LiSiGuo,20042,580; f(s); printf(%s%d%3.0fn,,s1.num,s1.TotalScore); 程序運(yùn)行后的輸出結(jié)果是( )。 A) SunDan 20044 550 B) Penghua 20045 537 C) LiSiGuo 20042 580 D) SunDan 20041 703 ( 49)下列程序的功能是進(jìn)行位運(yùn)算: main( ) 二級 C 語言程序設(shè)計(jì)試卷 第 10 頁(共 13 頁) unsigned char a,b; a=73; b=4 & 3; printf(%d%dn,a,b); 程序運(yùn)行后的輸出結(jié)果是( )。 A) 4 3 B) 7 3 C) 7 0 D) 4 0 ( 50)有下列程序: #include main( ) FILE *fp; int i,k,n; fp=fopen(data.dat,w+); for(i=1;i,程序的輸出結(jié)果是 【 12】 。 ( 13)下列函數(shù) sstrcat( )的功能是實(shí)現(xiàn)字符串的連接,即將 t 所指字符串復(fù)制到 s 所指字符 串的尾部。例如: s 所指字符串為 abcd, t 所指字符串為 efgh,函數(shù)調(diào)用后 s 所指字 符串為 abcdefgh。請?zhí)羁铡?#include void sstrcat(char *s,char *t) int n; n=strlen(s); while(*(s+n)= 【 13】 )s+ +,t+ +; ( 14)下列程序運(yùn)行后的輸出結(jié)果是 【 14】 #include char *ss(char *s) char *p,t; p=s+1;t=*s; while(*p)*(p-1)=*p;p+ +; *(p-1)=t; 二級 C 語言程序設(shè)計(jì)試卷 第 12 頁(共 13 頁) return s; main( ) char *p,str10=abcdefgh; p=ss(str); printf(%sn,p); ( 15)下列程序運(yùn)行后的輸出結(jié)果是 【 15】 。 int f(int a ,int n) if(n =1)return f(a,n-1)+an-1; else return 0; main( ) int aa5=1,2,3,4,5,s; s=f(aa,5); printf(%dn,s); ( 16)下列程序運(yùn)行后的輸出結(jié)果是 【 16】 。 struct NODE int num; truct NODE *next; ; main( ) struct NODE s3=1, 0,2, 0,3, 0,*p,*q,*r; int sum=0; s0.next=s+1; s1.next=s+2; s2.next=s; p=s; q=p next; r=q next; sum+ =q next num; sum+ =r next- next num; printf(%dn,sum); ( 17)下列程序的功能是輸出如下形式的方陣: 13 14 15 16 9 10 11 12 5 6 7 8 1 2 3 4 請?zhí)羁铡?main( ) int i,j,x; for(j=4;j 【 17】 ;j-) for(i=1;i =4;i+ +) x=(j-1)*4+ 【 18】 ; printf(%4d,x); printf(n); ( 18)下列函數(shù) rotate 的功能是:將 a 所指 N 行 N 列的二維數(shù)組中的最后一行放到 b 所指 二維數(shù)組的第 0 列中,把 a 所指二維數(shù)組中的第 0 行放到 b 所指二維數(shù)組的最后一列 中, b 所指二維數(shù)組中其他數(shù)據(jù)不變。 #define N 4 void rotade(int a N,int b N) int i,j; for(i=0;I B) #include main( ); main( ) /*programming*/ /* / programming / */ printf(programming! n); printf(programming!n); C) #include D) include main( ) main( ) /* / programming*/ */ /*programming */ printf(programming! n); printf(programming! n); ( 19)若有定義: float x=1.5; int a=1, b=3, c=2;則正確的 switch 語句是( )。 A) switch(x) B) switch(int)x); case 1.0:printf(* n); case 1:printf(*n); case 2.0:printf(* n); case 2:printf(*n); C) switch(a+b) D)switch(a+b) case 1:printf(*n); case 1:printf(* n); case 2+1:printf(* n); case c:printf(* n); ( 20)若各選項(xiàng)中所用變量已正確定義, fun()函數(shù)中通過 return 語句返回一個函數(shù)值,下列 選項(xiàng)中錯誤的程序是( )。 A) main( ) B) float fun(int a,int b) x =fun(2,10); main( ) float fun(int a,int b) x =fun(i,j); 二級 C 語言程序設(shè)計(jì)試卷 第 3 頁(共 12 頁) C) float fun(int,int); D) main( ) main( ) float fun(int I,int j); x =fun(2,10); x =fun(i,j); float fun(int a,int b) float fun(int a,int b) ( 21)在下列給出的表達(dá)式中,與 while(E)中的 (E)不等價的表達(dá)式是( )。 A) (!E= =0) B) (E0 Enext=r-next;p-next=r;r-next=q; B) p next=r;q-next=r-next;r-next=q; C) q next=r-next;r-next=q;p-next=r; D) r next=q;p-next=r;q-next=r-next; ( 26)有下列程序段 struct st int x;int *y;*pt; int a =l,2,b =3,4; struct st c2 = 10,a,20,b; 二級 C 語言程序設(shè)計(jì) 試卷 第 4 頁(共 12 頁) pt=c; 下列選項(xiàng)中表達(dá)式的值為 11 的是( )。 A) *pt y B) pt x C) + +pt x D) (pt+ +)-x ( 27)設(shè) fp 為指向某二進(jìn)制文件的指針,且已讀到此文件末尾,則函數(shù) feof(fp)的返回值為 ( )。 A) EOF B)非 0 值 C) 0 D) NULL ( 28)設(shè)有以下語句 int a=1,b=2,c; c =a (b main( ) char c1,c2,c3,c4,c5,c6; scanf(%c%c%c%c,&c1,&c2,&c3,&c4); c5=getchar( ); c6=getchar( ); putchar(c1);putchar(c2); printf(%c%cn,c5,c6); 程序運(yùn)行后,若從鍵盤輸入 (從第 1 列開始 ) 123 45678 則輸出結(jié)果是( )。 A) 1267 B) 1256 C) 1278 D) 1245 ( 30)有下列程序: main( ) int y=10; while(y-);printf(y=%dn,y); 程序執(zhí)行后的輸出結(jié)果是( )。 A) y=0 B) y=-1 C) y=1 D) while 構(gòu)成無限循環(huán) ( 31)有下列程序: main( ) int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3; printf(%d,%d,%d,%dn,a,b,c,d); 二級 C 語言程序設(shè)計(jì)試卷 第 5 頁(共 12 頁) 程序輸出( )。 A) 0, 1, 2, 0 B) 0,0, 0, 3 C) 1, 1, 2, 0 D)編譯有錯 ( 32)有下列程序: main( ) int i,j,x=0; for(i=0;i main( ) FILE *fp; char *s1=Fortran,*s2=Basic; if(fp=fopen(test.txt,wb)= =NULL) printf(Cant open test.txt filen);exit(1); fwrite(s1,7,1,fp); /*把從地址 s1 開始的 7 個字符寫到 fp 所指文件中 */ fseek(fp,0L,SEEK_SET); /*文件位置指針移到文件開頭 */ fwrite(s2,5,1,fp); fclose(fp); A) Basican B) BasicFortran C) Basic D) FortranBasic ( 44)下列敘述中錯誤的是( )。 A) C 語言源程序經(jīng)編譯后生成后綴為 .obj 的目標(biāo)程序 B) C 程序經(jīng)過編譯、連接步驟之后才能形成一個真正可執(zhí)行的二進(jìn)制機(jī)器指令文件 C)用 C 語言編寫的程序稱為源程序,它以 ASCII 代碼形式存放在一個文本文件中 D) C 語言中的每條可執(zhí)行語句和非執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令 ( 45)下列敘述中錯誤的是( )。 A)算法正確的程序最終一定會結(jié)束 B)算法正確的程序可以有零個輸出 C)算法正確的程序可以 有零個輸入 D)算法正確的程序?qū)τ谙嗤妮斎胍欢ㄓ邢嗤慕Y(jié)果 ( 46)下列敘述中錯誤的是( )。 A) C 程序必須由一個或一個以上的函數(shù)組成 B)函數(shù)調(diào)用可以作為一個獨(dú)立的語句存在 C)若函數(shù)有返回值,必須通過 return 語句返回 D)函數(shù)形參的值也可以傳回給對應(yīng)的實(shí)參 ( 47)設(shè)有下列定義和語句 char str20=Program,*p; p=str; 則下列敘述中正確的是( )。 A) *p 與 str0的值相等 B) str 與 p 的類型完全相同 二級 C 語言程序設(shè)計(jì)試卷 第 9 頁(共 12 頁) C) str 數(shù)組長度和 p 所指向的字符串長度相等 D)數(shù)組 str 中存放的內(nèi)容和指針變量 p 中存放的內(nèi)容相同 ( 48)下列敘述中錯誤的是( )。 A) C 程序中的 #include 和 #define 行均不是 C 語句 B)除逗號運(yùn)算符外,賦值運(yùn)算符的優(yōu)先級最低 C) C 程序中, j+ +;是賦值語句 D) C 程序中, +、 -、 *、 /、 %號是算術(shù)運(yùn)算符,可用于整型和實(shí)型數(shù)的運(yùn)算 ( 49)下列敘述中正確的是( )。 A)預(yù)處理命令行必須位于 C 源程序的起始位置 B)在 C 語言中,預(yù)處理命令行都以 #開頭 C)每個 C 程序必須在開頭包含預(yù)處理命令行: #include D) C 語言的預(yù)處理不能實(shí)現(xiàn)宏定義和條件編譯的功能 ( 50)下列敘述中錯誤的是( )。 A)可以通過 typedef 增加新的類型 B)可以用 typedef 將已存在的類型用一個新的名字來代表 C)用 typedef 定義新的類型名后,原有類型名仍有效 D)用 typedef 可以為各種類型起別名,但不能為變量起別名 二、填空題 (每空 2 分,共 40 分 ) ( 1)對長度為 10 的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為 【 1】 。 ( 2)在面向?qū)ο蠓椒ㄖ校?【 2】 描述的是具有相似屬性與操作的一組對象。 ( 3)在關(guān)系模型中,把數(shù)據(jù)看成是二維表,每一個二維表稱為一個 【 3】 。 ( 4)程序測試分為靜態(tài)分析和動態(tài)測試。其中 【 4】 是指不執(zhí)行程序,而只是對程序文 本進(jìn)行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯誤。 ( 5)數(shù)據(jù)獨(dú)立性分為邏輯獨(dú)立性與物理獨(dú)立性。當(dāng)數(shù)據(jù)的存儲結(jié)構(gòu)改變時,其邏輯結(jié)構(gòu)可 以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,稱為 【 5】 。 ( 6)若變量 a, b 已定義為 int 類型并賦值 21 和 55,要求用 printf 函數(shù)以 a=21, b=55 的形 式輸出,請寫出完整的的輸出語句 【 6】 。 ( 7)下列程序用于判斷 a、 b、 c 能否構(gòu)成三角形,若能,輸出 YES,否則輸出 NO。當(dāng)給 a、 b、 c 輸入三角形三條邊長時,確定 a、 b、 c 能構(gòu)成三角形的條件是需同時滿足三個條 件: a+bc, a+cb, b+ca。請?zhí)羁铡?main( ) float a,b,c; scanf(%f%f%f,&a,&b,&c); if( 【 7】 )printf(YESn); /*a、 b、 c 能構(gòu)成三角形 */ else printf(NOn); /*a、 b、 c 不能構(gòu)成三角形 */ ( 8)下列程序的輸出結(jié)果是 【 8】 。 main( ) int a33=1,2,9,3,4,8,5,6,7,i,s=0; for(i=0;i0) str2*i=stri;str2*i-1=*;i-; printf(%sn,str); main( ) char str40; scanf(%s,str); insert(str); ( 10)下列程序的運(yùn)行結(jié)果是: 【 10】 。 fun(int t , int n) int i,m; if(n= =1)return t0; else if(n=2)m=fun(t,n-1); return m; main( ) int a =11,4,6,3,8,2,3,5,9,2; printf(%dn,fun(a,10); ( 11)現(xiàn)有兩個 C 程序文件 T18.c 和 myfun.c 同在 TC 系統(tǒng)目錄 (文件夾 )下,其中 T18.c 文件 如下: #include #include myfun.c main( ) fun( );printf(n); myfun.c 文件如下: void fun( ) char s80,c; int n=0; while(c=getchar( )! =n) sn+ +=c; n-; while(n=0) printf(%c,sn-); 當(dāng)編譯連接通過后,運(yùn)行程序 T18 時,輸入 Thank!則輸出結(jié)果是: 【 11】 。 ( 12)下列函數(shù) fun 的功能是返回 str 所指字符串中以形參 c 中字符開頭的后續(xù)字符串的首 地址,例如: str 所指字符串為: Hello!, c 中的字符為 e,則函數(shù)返回字符串: ello! 的首地址。若 str 所指字符串為空串或不包含 c 中的字符,則函數(shù)返回 NULL。請 填 空。 char *fun(char *str,char c) int n=0; char *p=str; if(p! =NULL) while(pn! =c&pn! = 0)n+ +; 二級 C 語言程序設(shè)計(jì)試卷 第 11 頁(共 12 頁) if(pn= = 0) return NULL; return( 【 12】 ); ( 13)下列程序的功能是:輸出 100 以內(nèi) (不含 100)能被 3 整除且個位數(shù)為 6 的所有整數(shù), 請?zhí)羁铡?main( ) ( int i,j; for(i=0; 【 13】 ;i+ +) j=i*10+6; if( 【 14】 )continue; printf(%d,j); ( 14)下列 isprime 函數(shù)的功能是判斷形參 a 是否為素?cái)?shù),是素?cái)?shù),函數(shù)返回 1, 否則返回 0。請?zhí)羁?int isprime(int a) int i; for(i=2;i typedef struct node /*鏈表結(jié)點(diǎn)結(jié)構(gòu) * char sub3; struct node *next; Node; Node fun(char s) *建立鏈表 * void disp(Node *h) Node *p; p=h next; while( 【 19】 ) printf(%sn,P sub); p= 【 20】 ; main( ) Node *hd; hd=fun( ); disp(hd); printf(n); _ 2006 年 9 月全國計(jì)算機(jī)等級考試二級筆試試卷 (考試時間 120 分鐘,滿分 100 分) 一、選擇題( ( 1) -( 10)每小題 2 分,( 11) -( 50)每小題 1 分,共 60 分 ) ( 1) 下列選項(xiàng)中不符合良好程序設(shè)計(jì)風(fēng)格的是( )。 A)源程序要文檔化 B)數(shù)據(jù)說明的次序要規(guī)范化 C)避免濫用 goto 語句 D)模塊設(shè)計(jì)要保證高耦合、高內(nèi)聚 ( 2)從工程管理角度,軟件設(shè)計(jì)一般分為兩步完成,它們是( )。 A)概要設(shè)計(jì)與詳細(xì)設(shè)計(jì) B)數(shù)據(jù)設(shè)計(jì)與接口設(shè)計(jì) C)軟件結(jié)構(gòu)設(shè)計(jì)與數(shù)據(jù)設(shè)計(jì) D)過程設(shè)計(jì)與數(shù)據(jù)設(shè)計(jì) ( 3)下列選項(xiàng)中不屬于軟件生命周期開發(fā)階段任務(wù)的是( )。 A)軟件測試 B)概要設(shè)計(jì) C)軟件維護(hù) D)詳細(xì)設(shè)計(jì) ( 4)在數(shù)據(jù)庫系統(tǒng)中,用戶所見的數(shù)據(jù)模式為( )。 A)概念模式 B)外模式 C)內(nèi)模式 D)物理模式 ( 5)數(shù)據(jù)庫設(shè)計(jì)的 4 個階段是:需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和( )。 A)編碼設(shè)計(jì) B)測試階段 C)運(yùn)行階段 D)物理設(shè)計(jì) ( 6)設(shè)有如下 3 個關(guān)系表 R S T A B C A B C m 1 3 m 1 3 n n 1 3 下列操作中正確的是( )。 A) T=R S B) T=R S C) T=R S D) T=R/S ( 7)下列敘述中正確的是( )。 A)一個算法的空間復(fù)雜度大,則其時間復(fù)雜度也必定大 B)一個算法的空間復(fù)雜度大,則其時間復(fù)雜度必定小 C)一個算法的時間復(fù)雜度 大,則其空間復(fù)雜度必定小 D)上述三種說法都不對 ( 8)在長度為 64 的有序線性表中進(jìn)行順序查找,最壞情況下需要比較的次數(shù)為( )。 A) 63 B) 64 C) 6 D) 7 ( 9)數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的 ( )。 A) _存儲問題 B)共享問題 C)安全問題 D)保護(hù)問題 ( 10)對下列二叉樹 二級 C 語言程序設(shè)計(jì)試卷 第 2 頁(共 12 頁) 進(jìn)行中序遍歷的結(jié)果是( )。 A) ACBDFEG B) ACBDFGE C) ABDCGEF D) FCADBEG ( 11)下列敘述中錯誤的是( ) 。 A)一個 C 語言程序只能實(shí)現(xiàn)一種算法 B) C 程序可以由多個程序文件組成 C) C 程序可以由一個或多個函數(shù)組成 D)一個 C 函數(shù)可以單獨(dú)作為一個 C 程序文件存在 ( 12)下列敘述中正確的是( )。 A)每個 C 程序文件中都必須要有一個 main( )函數(shù) B)在 C 程序中 main( )函數(shù)的位置是固定的 C) C 程序中所有函數(shù)之間都可以相互調(diào)用,與函數(shù)所處位置無關(guān) D)在 C 程序的函數(shù)中不能定義另一個函數(shù) ( 13)下列定義變量的語句中錯誤的是( )。 A) int _int; B) double int_; C) char For; D) float US$; ( 14)若變量 x、 y 已正確定義并賦值,下列符合 C 語言語法的表達(dá)式是( )。 A) + +x,y=x- B) x+1=y C) x=x+10=x+y D) double(x)/10 ( 15)下列關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對象的敘述中正確的是( )。 A)只能是整數(shù) 0 或 1 B)只能是整數(shù) 0 或非 0 整數(shù) C)可以是結(jié)構(gòu)體類型的數(shù)據(jù) D)可以是任意合法的表達(dá)式 ( 16)若有定義 int x,y; 并已正確給變量賦值,則下列選項(xiàng)中與表達(dá)式 (x-y)?(x+ +):(y+ +)中 的條件表達(dá)式 (x-y)等價的是( )。 A)( x-y0) B)( x-y0) D)( x-y= =0) ( 17)有下列程序: main( ) int x,y,z; x=y=1; z=x+ +,y+ +,+ +y; printf(%d,%d,%dn,x,y,z); 程序運(yùn)行后的輸出結(jié)果是( )。 A) 2,3,3 B) 2,3,2 C) 2,3,1 D) 2,2,1 ( 18)設(shè)有定義: int a; float b; 執(zhí)行 scanf(%2d%f,&a,&b);語句時,若從鍵盤輸入 876543.0, a 和 b 的值分別是( )。 A) 876 和 543.000000 B) 87 和 6.000000 C) 87 和 543.000000 D) 76 和 54
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國脂肪緊致產(chǎn)品行業(yè)市場深度研究及發(fā)展前景投資可行性分析報告
- 2025至2030中國背景調(diào)查行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國育發(fā)水行業(yè)深度研究及發(fā)展前景投資評估分析
- 2025至2030中國聚合物軟管行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國耳鼻喉科手術(shù)臺行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國羥基封端的聚丁二烯(HTPB)行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國羊毛棉空調(diào)被行業(yè)發(fā)展趨勢與投資戰(zhàn)略報告
- 倉庫火災(zāi)應(yīng)急預(yù)案和處理流程
- 2025至2030中國繡花坯布行業(yè)市場深度研究與戰(zhàn)略咨詢分析報告
- 檢驗(yàn)科危險廢物標(biāo)本溢灑處理流程
- 工程力學(xué)標(biāo)準(zhǔn)試卷(A)考題
- GA 1809-2022城市供水系統(tǒng)反恐怖防范要求
- 公司DFMEA樣表模板
- 2023-2024學(xué)年貴州省貴陽市小學(xué)語文三年級下冊期末??伎荚囶}
- RB/T 069-2021居家養(yǎng)老服務(wù)認(rèn)證要求膳食服務(wù)
- JJG 648-2017非連續(xù)累計(jì)自動衡器(累計(jì)料斗秤)
- 品牌戰(zhàn)略定位課件
- 2022年武漢東湖學(xué)院輔導(dǎo)員招聘考試筆試試題及答案解析
- 醫(yī)療技術(shù)分級授權(quán)與再授權(quán)申請表
- 兒童腺病毒肺炎診療規(guī)范課件
- MBTI人格理論教學(xué)課件
評論
0/150
提交評論