C程序設計期中考試試卷_第1頁
C程序設計期中考試試卷_第2頁
C程序設計期中考試試卷_第3頁
C程序設計期中考試試卷_第4頁
C程序設計期中考試試卷_第5頁
已閱讀5頁,還剩1頁未讀, 繼續免費閱讀

VIP免費下載

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

文檔簡介

1、一、選擇題(每題1分,共40分)1. 以下敘述中錯誤的是 【 】。(A)C語言編寫的函數源程序,其文件名后綴可以是C(B)C語言編寫的函數都可以作為一個獨立的源程序文件(C)C語言編寫的每個函數都可以進行獨立的編譯并執行(D)一個C語言程序只能有一個主函數2. 以下敘述正確的是 【 】。(A) 在C程序中,main函數必須位于程序的最前面(B) C程序的每行中只能寫一條語句(C) C語言本身沒有輸入輸出語句 (D) 在對一個C程序進行編譯的過程中,可發現注釋中的拼寫錯誤 3. C語言中的標識符只能由字母、數字和下劃線三種字符組成,且第一個字符 【 】。(A)必須為字母 (B)必須為下劃線 (C

2、)必須為字母或下劃線 (D)可以是字母,數字和下劃線中的任一種字符4. 下列形式的常數,C程序不允許出現的是【 】。(A)±123 (B) .45 (C) 25.6e-2 (D) 4e35. 在C語言中,邏輯值"真"的表示是用 【 】。(A) true (B) 整型值0 (C)非零整型值 (D) T6. 設有說明:char w; int x; float y; double z;則表達式w*x+z-y值的數據類型為 【 】。(A) float (B) char (C) int (D) double 7. 下列運算符中,不屬于關系運算符的是【 】。(A) <

3、(B) > = (C) ! (D) ! =8. 設 x=3,y=2,則表達式x*=y+8的值為 【 】。(A) 3 (B) 2 (C) 30 (D) 109. 若定義數組int a10 ,其數組元素的下標下限為 【 】。(A) 1 (B) 0 (C) 9 (D) 1010. 設x=2.5,a=7,y=4.7,算術表達式x+a%3*(int)(x+y)%2/4的值為 【 】。(A) 2.5 (B) 7 (C) 4.7 (D) 2.7511. C語言正確表達關系: XYZ的是 【 】。(A) (X>=Y)&&(Y>=Z) (B) (X>=Y)AND(Y>

4、;=Z)(C) (X>=Y>=Z) (D) (X>=Y)&(Y>=Z)12. 已知 int x=10,y=20,z=30,以下語句執行后x,y,z的值是 【 】。if(x>y)z=x;x=y;y=z;(A) x=10,y=10,z=30 (B) x=20,y=30,z=30(C) x=20,y=30,z=10 (D) x=20,y=30,z=2013. 若定義數組并初始化char a="hello",該數組的元素個數是 【 】。(A) 不知道 (B) 5 (C) 6 (D) 714. 以下說法正確的是 【 】。 (A)輸入項可以為一個實

5、數常量,如scanf(“%f”,3.5);(B)只有格式控制,沒有輸入項,也能進行正確輸入,如:scanf(“a=%d,b=%d”);(C)當輸入一個實型數據時,格式控制部分應規定小數點后的位數,如:scanf(“%4.2f”,&a);(D)當輸入數據時,必須指明變量的地址,如scanf(“%f”,&a);15. 以下不正確的語句為 【 】。(A) if(x>y);(B) if(x=y)&&(x!=0) x+=y;(C) if(x!=y) scanf(“%d”,&x);else scanf(“%d”,&y);(D) if(x<y) x

6、+;y+;16. 下面程序段的運行結果是 【 】。int a=1,b=2,c=2,t;while(a<b<c) t=a;a=b;b=t;c-;printf(“%d,%d,%d”,a,b,c);(A) 1,2,0 (B) 2,1,0 (C) 1,2,1 (D) 2,1,117. 以下能正確計算1*2*3*4*5*6*7*8*9*10的程序段是 【 】。 (A) do (B) do i=1;s=1; i=1;s=0;s=s*i; s=s*i;i+; i+; while(i<=10); while(i<=10); (C) i=1;s=1; (D) i=1;s=0;do do

7、s=s*i; s=s*i;i+; i+;while(i<=10); while(i<=10);18. 若用數組名作函數調用的實參,傳遞給形參的是【 】。(A)數組的首地址 (B)數組第一個元素的值(C)數組中全部元素的值 (D)數組元素的個數19. 若有定義語句:int a=3,b=2,c=1;,以下選項中錯誤的賦值表達式是(A)a=(b=4)=3(B)a=b=c+1(C)a=(b=4)+c(D)a=1+(b=c=4)20. 以下正確的描述是 【 】。(A) continue語句的作用是結束整個循環的執行(B)只能在循環體內和switch語句體內使用break語句(C)在循環體內使

8、用break語句或continue語句的作用相同(D)break語句和continue語句的作用完全相同21. 若有定義語句:intk1=10,k2=20;,執行表達式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分別為 【 】。(A)0和1 (B)0和20 (C)10和1 (D)10和2022. 以下程序的運行結果為 【 】。int main( ) int a=2,b=-1,c=2;if(a<b)if(a<c) c=0;else c+=1 ;printf( “%dn”,c) ;return 0;(A) 0 (B) 1 (C) 2 (D)

9、 323. 以下程序的運行結果為 【 】。int main( ) int w=4,x=3,y=2,z=1;printf(“%dn”,(w<x?w:z<y?z:x);return 0;(A) 1 (B) 2 (C) 3 (D) 424. 以下程序的運行結果為 【 】。#include<stdio.h>int func(int a,int b) static int m=0,i=2; i+=m+1;m=i+a+b;return(m);int main( ) int k=4,m=1,p;p=func(k,m); printf(“%d,”,p);p=func(k,m); pri

10、ntf(“%dn”,p);return 0;(A) 8,17 (B) 8,16 (C) 8,20 (D) 8,8 25. 以下程序的運行結果為【 】。#include <stdio.h>int main( ) int n=0;while(n<8) switch(n%3) case 2: putchar( 2);case 1: putchar( i); break;case 0: putchar( H);n+;return 0; (A) Hi2Hi2Hi (B) Hi2 (C) Hi2iHi2i (D) Hi2iHi2iHi26. 以下程序的運行結果為 【 】。int main

11、( ) int i;for(i=1;i<=5;i+) if(i%2) printf( “*” );else continue;printf( “#” );printf( “$n” );return 0;(A) *#*#*#$ (B) #*#*#*$ (C) *#*#$ (D) #*#*$27. 執行語句y=10; x=y+;后x,y的值為 【 】。(A) 10,10 (B)11,11 (C)10,11 (D)11,1028. 以下程序的運行結果為 【 】。int main() int n;for(n=1;n<=10;n+) if(n%3!=0) continue; printf(“

12、%d”,n); return 0;(A) 12457810 (B)369 (C)12 29. 設x 和y均為int型變量,則語句x+=y;y=x-y ; x-=y ;的功能是 【 】。(A) 把x和y按從大到小排列 (B) 把x和y按從小到大排列(C) 無確定結果 (D)交換x和y 中的值30. int a4=2,3,4,i;i=a0*a1+a2*a3; i的值為 【 】。(A) 2 (B) 4 (C)6 (D)1031. 若有定義int a4=1,2,3;請問aaa0值是 【 】。(A) 1 (B)2 (C)3 (D)432. 以下正確的描述是 【 】。(A)函數的定義可以嵌套,函數的調用不

13、可以嵌套。(B)函數的定義不可以嵌套,函數的調用可以嵌套。(C)函數的定義和函數的調用均不可以嵌套。(D)函數的定義和函數的調用均可以嵌套。33. 以下不正確的說法是 【 】。(A)在函數內復合語句中定義的變量在本函數范圍內有效。(B)在不同函數中可以使用相同名字的變量。(C)形參是局部變量。(D)函數調用結束后,靜態局部變量的值仍然保留。34. 已有定義:int x=3 ,y=4 ,z=5 ;則表達式 !(x+y)+z-1 && y+z/2的值是 【 】。(A)6 (B)0 (C)2 (D)135. int main() int n4=1,2,3,4 , k ; for( k

14、=0 ; k<4 ; k+ ) if( k/2 ) break;nk+;printf(“%dn”,n+k);return 0;執行后輸出結果是 【 】。(A) 2 (B)3 (C)4 (D)536. 以下程序運行結果是 【 】。int main() int a23=1,3,5,4,7,6,i,j,b=a00;for(i=0;i<2;i+)for(j=0;j<3;j+)if(b<aij)b=aij;printf(“%dn”,b);return 0;(A) 5 (B)7 (C)4 (D) 137. 以下程序運行結果是 【 】。int main() char s50=”I a

15、m a student”,c;int i ,num=0,word=0;for(i=0;c=si;i+)if(c= ) word=0;else if( word=0 )word=1;num+;printf(“%dn”,num);return 0;(A)2 (B)3 (C)4 (D)538. 以下程序運行結果是 【 】。int main() int a=1,2,3,4,5,6,7,8,9,i,j,k;for(i=0,j=8;i<j;i+,j-)k=ai;ai=aj;aj=k;printf(“%dn”,a1+a5);return 0;(A)11 (B)12 (C)13 (D)1439. 以下程

16、序的運行結果為 【 】。int main( ) int k,j,s;for(k=2;k<6;k+,k+)s=1;for(j=k;j<6;j+) s+=j;printf(“%dn”,s);return 0;(A)9 (B)1 (C)11 (D)1040. 以下程序的運行結果為 【 】。int main( ) int i,j,m=0;for(i=1;i<=15;i+=4) for(j=3;j<=19;j+=4) m+; printf(“%dn”,m);return 0; (A)12 (B)15 (C)20 (D)25二、填空題(每空2分,共30分)1. #define GZ

17、 20int main( )int num,total,gz;gz=40;num=10;total=num*GZ;printf(“total=%dn”,total);return 0;運行結果: (1) 2. #define A 3#define B(a) (A+1)*a)int main( ) int x;x=3*(A+B(7);printf(“x=%dn”,x);return 0;運行結果: (2) 3. func(int a,int b)static int m=0,i=2;i+=m+1;m=i+a+b;return(m)int main( )int k=4,m=1,p;p=func(k

18、,m); printf(“%d,”p);p=func(k,m); printf(“%dn”,p);return 0;運行結果: (3) 4. int main( ) int i,j,row,col,m;int arr33=100,200,300,28,72,-30,-850,2,6;m=arr00; for(i=0;i<3;i+)for(j=0;j<3;j+)if(arrij<m) m=arrij; row=I;col=j;printf(“%d,%d,%dn”,m,row,col);return 0;運行結果: (4) 5. unsigned fun6(unsigned nu

19、m) unsigned k=1;do k*=num%10;num/=10;while(num);return(k);int main( ) unsigned n=26;printf(“%dn”,fun6(n);return 0;運行結果: (5) 6. 計算球的體積。int main() float r,v;scanf(“(6) ”,&r); (7) printf(“v=%6.2fn”,v);return 0;7. 判斷質數#include<math.h>int main() int i,flag=1,n;scanf(“%d”,&n);for(i=2;i<=sqrt(n);i+)if( (8) ) flag=0;break;if( (9) )printf(“%d是質數n”,n);else printf(“%d不是質數n”,n);return 0;8. 計算數組中元素的平均數。int main() float average(int a);int a10,i;f

溫馨提示

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

評論

0/150

提交評論