C語言程序設(shè)計(jì) 筆試試卷(一)_第1頁
C語言程序設(shè)計(jì) 筆試試卷(一)_第2頁
C語言程序設(shè)計(jì) 筆試試卷(一)_第3頁
C語言程序設(shè)計(jì) 筆試試卷(一)_第4頁
C語言程序設(shè)計(jì) 筆試試卷(一)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、PAGE PAGE 15C語言程序設(shè)計(jì) 筆試試卷(一)考試時(shí)間:120分鐘注意:請(qǐng)將答案書寫在答卷紙上,否則不給分!單項(xiàng)選擇題(每個(gè)選項(xiàng)1.5分,共60分)1、以下敘述中正確的是( )。A)構(gòu)成C程序的基本單位是函數(shù) B)可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)C)main()函數(shù)必須放在其它函數(shù)之前D)所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義2、以下對(duì)C語言函數(shù)的有關(guān)描述中,正確的是( )。A)函數(shù)必須有返回值,否則不能使用函數(shù)B)C函數(shù)既可以嵌套定義又可以遞歸調(diào)用 C)在C中,調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不能傳送給實(shí)參D)C程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)源程序文件中3、C

2、語言的基本數(shù)據(jù)類型包括( )。A)整型,實(shí)型,邏輯型 B)整型,實(shí)型,字符型C)整型,字符型,邏輯型 D)整型,實(shí)型,邏輯型,字符型4、C語言中用于結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是( )。A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu) B)if、switch、breakC)for、while、do-while D)if、for、continue5、下述合法的C語言的字符常量是( )。A)A B)65 C)A D)t6、下面不正確的賦值語句是( )。A)+t; B)n1=(n2=(n3=0); C)k=i=j; D)a=a+b=1;7、b在內(nèi)存中以( )個(gè)字節(jié)存放。A)1 B)2 C)3 D)不確定8、a是in

3、t類型變量,c是字符變量。下列輸入語句中哪一個(gè)是錯(cuò)誤的( )。A)scanf (%d, %c,&a, &c); B)scanf ( %d%c, a, c);C)scanf ( %d%c, &a,&c ); D)scanf ( d=% d, c=%c,&a, &c);9、假設(shè)定義:int x = 3, y = 3; 則復(fù)合賦值表達(dá)式x /= 1+y的值為( )。A)0 B)0.75 C)6 10、a=3*4,a+5; a的值為( )。A)17 B)12 C)60 D)511、若已定義x和y為double類型,則表達(dá)式: x=1,y=x+3/2的值是( )。A)1 B)2 C)2.0 D)2.5

4、12、設(shè)a為整型變量,不能正確表達(dá)數(shù)學(xué)關(guān)系10a15的C語言表達(dá)式是( )。A)10a10&a15 D)!(a=15) 13、對(duì)于int x, y; 語句 if (x=0) if (x) y=1; else y= -1; B) if (x!=0) if (x0) y=1; else y= -1; else y=0;C)if (x0) y=1; else y=0;14、下列程序段執(zhí)行后s值為( )。int i=1, s=0;do if (!(i%2) continue; s+=i; while (+i10);A) 1 B) 45 C) 25 D) 以上均不是15、下列程序執(zhí)行后,輸出結(jié)果為( )

5、。int func(int x,int y)return x+y;main() int a=1,b=2,c=3,d=4,e=5;printf(%dn,func(a+b,b+c,c+a),(d,e);A) 15 B)5 C16、對(duì)于以下程序段, 運(yùn)行后i值為( )。int i=0, a=1;switch (a) case 1: i+=1;case 2: i+=2; break;default: i+=3; A) 1 B) 3 C) 6 D) 上述程序有語法錯(cuò)誤17、設(shè)有以下程序段,則( )。int x=0,s=0;while(!x!=0) s+=+x;printf(“%d”,s);A)運(yùn)行程序段

6、后輸出0 B)運(yùn)行程序段后輸出1C)程序段中的控制表達(dá)式是非法的 D)程序段執(zhí)行無限次18、下列程序中的變量已正確定義,要求程序段完成求5!(階乘)的計(jì)算,不能完成此操作的程序段是( )。A)for(i=1,p=1;i=5;i+) p*=i;B)for(i=1;i=5;i+) p=1;p*=i;C)i=1; p=1; while(i=5)p*=i;i+;D)i=1; p=1; dop*=i;i+; while(ia)|(m=ab);printf(%d,%dn,k,m);A) 0,0 B) 0,1 C) 1,0 D) 1,120、下列程序運(yùn)行后的輸出結(jié)果是( )。void fun(char *c

7、,intd) *c=*c+1;d=d+1; printf(%c,%c,*c,d); main() char a=A,b=a; fun(&b,a); printf(%c,%cn,a,b); A) B,a,B,a B) a,B,a,B C) A,b,A,b D) b,B,A,b21、下列程序運(yùn)行后的輸出結(jié)果是( )。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); A) 4 B) 3 C) 2 D) 122、下列程序執(zhí)行后的輸出

8、結(jié)果是( )。 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) hlm23、在位運(yùn)算中,操作數(shù)每左移1位,其結(jié)果相當(dāng)于( )。A)操作數(shù)乘以2 B)操作數(shù)除以2 C)操作數(shù)除以16 D)操作數(shù)乘以1624、下列數(shù)組定義語句中合法的是( )。A)int a=s

9、tring; B)int a5=0,1,2,3,4,5; C)char a=string; D)char a=0,1,2,3,4,5;25、若有以下的定義:inta=1,2,3,4,5,6,7,8,9,10,*p=a則值為3的表達(dá)式是( )。A)p+=2,*(p+) B)p+=2,*+p C)p+=3,*p+ D)p+=2,+*p 26、下列語句或語句組中,能正確進(jìn)行字符串賦值的是( )。A)char *sp;*sp=right!; B)char s10;s=right!; C)char s10;*s=right!; D)char *sp=right!;27、假定所有變量均已正確說明,下列是程

10、序段運(yùn)行后x的值是( )。a=b=c=0;x=35;if(!a)x-;elseif(b);if(c)x=3;elsex=4;A)34 B)4 C)35 D)328、下列程序運(yùn)行后的輸出結(jié)果是( )。main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+y?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,

11、%dn,e,f,g); A)4,3,7 B)3,4,7 C)5,2,7 D30、下列函數(shù)的功能是( )。fun(char *a,char *b) while(*a!=0)&(*b!=0)&(*a=*b) a+;b+; return(*a-*b); A)計(jì)算a和b所指字符串的長(zhǎng)度之差 B)將b所指字符串連接到a所指字符串中 C)將b所指字符串連接到a所指字符串后面 D)比較a和b所指字符串的大小31、下列程序運(yùn)行后的輸出結(jié)果是( )。point(char *p)p+=3; main() char b4=a,b,c,d,*p=b; point(p);printf(%cn,*p); A)a B)b

12、C)c D)d32、下列程序運(yùn)行后的輸出結(jié)果是( )。void ss(char *s,char t) while(*s) if(*s=t) *s=t-a+A; s+; main() char str1100=abcddfefdbd,c=d; ss(str1,c); printf(%sn,str1); A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd33、C語言中函數(shù)返回值的類型是由( )決定的。A)return語句中的表達(dá)式類型 B)調(diào)用該函數(shù)的主調(diào)函數(shù)類型C)調(diào)用函數(shù)時(shí)臨時(shí)指定 D)定義函數(shù)時(shí)所指定的函數(shù)類型34、設(shè)有定義:str

13、uctskinta;floatb;data,*p;若有p=data;,則對(duì)data中的a域的正確引用是( )。A)(*p).data.a B)(*p).a C)p-data.a D)p.data.a 35、若有下列說明和定義,則以下敘述中錯(cuò)誤的是( )。union dt int a;char b;double c;data; A)data的每個(gè)成員起始地址都相同B)變量data所占的內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等C)程序段:data.a=5;printf(%fn,data.c);輸出結(jié)果為5.000000 D)data可以作為函數(shù)的實(shí)參36、以下敘述中錯(cuò)誤的是( )。A)二進(jìn)制文件打開后可以

14、先讀文件的末尾,而順序文件不可以 B)在程序結(jié)束時(shí),應(yīng)當(dāng)用fclose函數(shù)關(guān)閉已打開的文件 C)利用fread函數(shù)從二進(jìn)制文件中讀數(shù)據(jù),可以用數(shù)組名給數(shù)組中所有元素讀入數(shù)據(jù) D)不可以用FILE定義指向二進(jìn)制文件的文件指針37、有下列程序#include main(int argc,char *argv) int i,len=0; for(i=1;iargc;i+) len+=strlen(argvi); printf(%dn,len); 程序編譯連接后生成的可執(zhí)行文件是ex1.exe,若運(yùn)行時(shí)輸入帶參數(shù)的命令行是:ex1 abcd efg 10 則運(yùn)行的結(jié)果是( )。A) 22 B) 17

15、C) 12 D) 938、若用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,則實(shí)際上傳遞給形參的是( )。A)數(shù)組首地址 B)數(shù)組的第一個(gè)元素值C)數(shù)組中全部元素的值 D)數(shù)組元素的個(gè)數(shù)39、有一函數(shù): int f(int a) auto int b = 0; static int c = 3; b = b+1; c = c+1; return(a+b+c); 如果有int i, j; 則執(zhí)行兩次調(diào)用:i=f(2); j=f(2) 后, i, j值為( )。A) i = 7, j = 7 B) i = 7, j = 8C) i = 8, j = 7 D) i = 8, j = 840、有下列函數(shù)則,調(diào)用f(“1

16、234”)的返回結(jié)果是( )。int f(char *s) int k = 0; while (*s) k = k*10+*s+-0; return(k); A) “1234” B) 1234 C) “填空題(每空2分,共40分)1、判斷一個(gè)字符是否是字母或數(shù)字的邏輯表達(dá)式是: 【1】 。2、執(zhí)行語句:for(i=1;i+10&x50) x+; if(x/3)x+;break; else continue; printf(%dn,x); 7、下面程序的功能是輸出以下形式的金字塔圖案是: * * * *main( ) int i,j; for(i=1;i=4;i+) for(j=1;j=4-i;

17、j+) printf(“ “); for(j=1;j= 【8】_;j+) printf(“*”); printf(“n”);8、下面程序的功能是:將n行n列的矩陣A轉(zhuǎn)置為A,例如:則A則A1 5 9 132 6 10 143 7 11 154 8 12 16當(dāng)A1 2 3 45 6 7 89 10 11 1213 14 15 16#define N 4main() int aN=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16;int i,j,t; for(i=0;iN;i+) for(j=0; 【9】 ;j+) t=aij; 【10】 ; aji=t; 9、下面程序的功能是用公式求的近似值,直到最后一項(xiàng)的小于10- 6為止。請(qǐng)?zhí)羁铡?include #include main()long i=1; 【11】 pi=0;while(i*i=1

溫馨提示

  • 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)論