


版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、C語言程序設計樣題一、單選題1. c程序的基本構成單位是 (C )A)文件B)命令C)函數D)語句2.在C語言中,W 是(B )A)字符串常量B)字符常量C)變量D)函數3.在C語言中,“ a=b=c=5屬于哪種表達式?(B)A)關系B)賦值C)邏輯D)非法4.設a、b為整型,則表達式(a=2,b=5,b+,a+b)的值是(D )A)2B)6C)7D)85. 若有以下變量定義:int b=2;float a=5;則表達式“ a/b之值為(A)A) 2.5B)2C)3D)5/26. 若j=3,則表達式(+j)+(j+)的值為(C )A) 6B)7C)8D)107. 以下只能輸入單個字符的函數是(
2、C)A) pri ntf()B)puts() C)getchar() D)putchar()8. 若a的原值為4,則表達式“ a*=a=3”運算后,a的值是(D )A)13B)4C)3D)19.若 a=5、b=3、c=l,則表達式“ abc的值為(A )A)0B)1C)3D)510.若有代數式:3aebe以下錯誤吳的C-語言表達式是(C )A)a/b/c*e*3B)3*a*e/b/cC)3*a*e/b*cD)a*e/c/b*311. 下列能輸岀字符數組str中字符串的語句是(B)A)pri ntf(%c,str0);B)pri ntf(%s,str);C)pri ntf(%s,str);D)p
3、utchar(str);12. 若? =&乂,則下列關系表達式之值為1的是(B )A)p=x B)*p=xC)&p=xD)*x=p13. C語言中最基本的數據類型包括(B )A)整型、實型、邏輯型B)整型、實型、字符型C)整型、邏輯型、字符型D)整型、實型、字符串型(A )14. C 語言中,要求運算對象必須是整型數據的運算符是16.17.A)x=y=z B)x=y II y=z以下說法中正確的是 (C )A)B)C)D)C 程序總是從文件中第一個函數開始執行C)x=y&y=zD)x2y zC 程序中,只有 main() 函數才可以調用其他函數C 程序總是從 main() 函數開始執行C 程序
4、中的 main() 函數必須放在程序的開頭若有定義:int a=7;float x=2.5,y=4.7;則表達式 x+a%3*(int)(x+y)%2/4 的值為 ( A )18.19.A)2.5B)2.75設變量a是整型,f是實型,A)intB)float有輸入語句:C)3.5D)0i 是雙精度型,貝 I 表達式 10+a+i*fC)doubleD) 不確定值的數據類型為 ( C )scanf(%d,%d,&a,&b); 為使變量 a、 b 分別為5和 3,從鍵盤輸入數據的正確形式為( B )20.A)5 3 回車定義如下變量和數組:B)5,3 回車 C)a=5 b=3=0;j-) prin
5、tf(%2d,xj2-j);A) 1 5 9B)14 7C)7 5 3D)3 6 921. 執行下面程序后,a的值是(B )#include #define SQR(x) x*xvoid main()(int a=10,k=2,m=l;a=SQR(k+m);printf(%dn,a);A)10B)5C)2D)122. 以下敘述不正確的是 ( C )A) 在函數內部定義的變量是局部變量B) 函數中的形式參數是局部變量C) 全局變量的作用范圍僅限于其所在的整個文件D) 局部變量的作用范圍僅限于本函數ab?a:cd?c:d 的值為(C )D)123. 設 a=3,b=4,c=2,d=l, 則表達式
6、A)4 B)3 C)224. 有以下程序段:x=-l;dox=x*x;while(!x);執行時,循環體執行的次數為 ( B )A)0B)1C)2 D)不確定25, 以下不正確的 if 語句形式是 (C )A) if (xy&x!=y);B) if (x= =y) x+=y;C) if (x!=y) scanf(%d,&x)else scanf(%d,&y);D) if (xy) x+;y+;26, 以下程序的輸出結果是( C )#include void main() int x=2,y=-l,z=2;if(xy)if (y0) z=0; else z+=l;printf( ” n” ,z)
7、;A)0B)1C)2D)327.以下能正確計算1 X2X3X-X10 的程序段是 (A )A) i=l,s=l;dos=s*i;i+;B) s=l;i=l; while(i=10) s=s*(+i);D)for(i=l,s=l;i+)s=s*i;C) for(i=l,s=0;i=10;i+)s=s*i;28. 若 j 為整型變量,則以下循環執行次數是 ( C )for (j=O;j= =0;) printf(%d,j-);A)無限次 B)0次C)1次D)2次29若有說明:int a10;則對a數組元素的正確引用是(C )A)a3.5B)a(8)C)a6-5D)a10A )地址傳遞B)單向值傳遞
8、C)雙向值傳遞D)由用戶指定傳遞方式31 C中,一個float類型的數據在內存中占(C )個字節 . A)1B) 2C)4D)832.設有程序段:int k=5;while (k=0)k-;A) while循環執行5次C)循環語句一次也不執行33下面程序段的運行結果是 貝(下列描述中正確的是(CB )循環是無限循環D)循環體語句執行一次)34以下不正確的字符;串賦值語句是.A)ictfa%s;,s=;nabcde;B) char s =abcde;A)daar S1 bl; s=alBdabDChar *s=abcde H; D)35設pl、p2是指向int型一維數組的指針變量,k為int型變
9、量,以下錯誤的語句是(B )A)k=*pl+*p2; B)p2=k;C) pl=p2; D)36下面程序的輸出結果是(A ) k=p2-pl; .#i nclude void mai n()(chars= nABCD n;char *p;for (p=s;pvs+4;p+) prin tf(%sn n, p);A) ABCDB) A37C) DD)ABCDA函數的定義可以嵌套,但函數的調用不B函數的調用可以嵌套,但函數的定義不)BCDBCABCDCBCABDDAA以下關于C函數的定義和調用描述正確的是(B )函數的定義和調用均可以嵌套D)函數的定義和調用均不可38以下關于變量的作用域說法正確的
10、是 .A )在不同函數中不能使用相同名字變量B ) 在函數外部定義的變量只在本函數范圍內有效C) 在函數內的復合語句定義的變量在本函數內有效D ) 形式參數是局部變量39. 以下關于變量的作用域敘述不正確的是( C )A ) 在函數內部定義的變量是局部變量B ) 函數中的形式參數是局部變量C) 全局變量的作用范圍僅限于其所在的文件D ) 局部變量的作用范圍僅限于本函數40. 以下關于 C 函數參數說法不正確的是(B )A ) 實參可以是常量、變量和表達式B ) 形參可以是常量、變量和表達式C) 實參可以為任意數據類型D ) 形參應與對應的實參類型一致41. 以下關于 C 函數返回值的敘述正確的
11、是(D )A ) 被調函數中只有使用 return 語句才能返回主調函數B ) 使用一個 return 語句可以返回多個函數值C) 函數返回值類型取決于 return 語句中的表達式類型D ) 函數返回值類型取決于定義該函數時所指定的類型42. 在C中,“ abc屬于哪種表達式?( A )A)關系B)賦值C)邏輯D)非法43. 以下不合法的 C表達式是(C )A ) 10 II 8 B ) 12= =9+1 C ) +5 D ) x!=y44. 給定以下程序段:int n=10;while ( n6) n-;printf ( %3d,n ) ;以上程序段輸出結果是( D )A ) 10 9 8
12、B ) 9 8 7 C ) 10 9 8 7 D ) 9 8 7 645. 若i, j已定義為int型,則以下程序段中內循環總的執行次數是( C )for ( i=5; i0; i- )for ( j=l;jb lie的值為 L4. 整數m既能被3整除又能被4整除的邏輯表達式為(m%3= =0)&(m%4= =0)5. 若有定義:double a105;則數絹a中行下標最大佰為9,列下標最大值為 46. 若有定義:int a = l,4,6,5,8,9;貝 U *(a+5)的值為 97. 設有如下定義int a56,*p;取數組元素a4的地址放到p中的語句為p=&a41;它的文8. 未加特別說
13、明(說明為靜態的)的全局變量是外部的,能被其它文件中的函數使用,而在引用 件中,需要用關鍵字 extern說明。9. 已知a=10, b=20,則表達式!ab的俏為010. 寫岀0xl的C邏輯表達式(0x)&(xl)11. 若有定義:inta10,*p=a;貝U元素a51的值用p表示的形式是 *( D+5)12. 若有定義:int *p4;則標識符p表示 數組長度為4的一維指針數組13. 凡是函數中未指定存儲類型的局部變量,其默認的存儲類型為auto三、程序填空1. 下面程序的功能是:從鍵盤輸入一個字符,若是大寫字母,則轉換為小寫字母并輸岀,若為小寫字母則直接輸出,請在 處填上合適內容,使程序
14、完整。#i nclude void mai n()(char ch;ch=getchar();if (ch=A&chv=Z)ch+=32;printf( %” ,ch);12. 下面程序的功能是:求1? 100間的偶數和,請在處填上合適內容,使程序完整#i nclude void mai n() int n um, sum=0;for (num=2; n um=100; num=n um+2)sum=sum+num ;printf( nl-100 間的偶數和是:%dn M, sum);13. 下面程序段是求n!的遞歸函數,請將函數補充完整。double fac(i nt n)(double r
15、esult;if (n=l)result=l;elseresult=n *fac (n-l);retum(result);4. 以下程序的功能是:輸入一整數n,判斷是否為素數。#i nclude #in cludevoid mai n()(int i, n;scanf(%d H,&n);for (i=2; iv=sqrt(n); i+)if (n%i= =0)break;if (isqrt(n)printf( %d is a prime numberAn, n);elseprintf( H%d is not a prime number.n, n);四、閱讀程序1. #in clude voi
16、d mai n()(char ch;int cn tl=0,c nt2=0;while (ch=getchar( )!=* n)if (ch= a&ch= ,z,) cn tl+;else cn t2+;printf(” COUNT=%dcnt 1);若輸入This is a C program.,運行結果:COUNT=132. #in clude void mai n()(int i,j,temp;int a=0,l,2,3,4,5,6,7,8,9;for(i=0,j=9;ij;i+,j-)temp=ai;ai=aj;aj=temp;for(j=0;j10;j+)printf( H%2dn,
17、aj);運行結果:9 876543 2 1 03. #in elude #in elude void mai n()(char strl 20=good,str2 =momi ng;int i,j ;for (i=strlen(str 1) ,j=0;str2 j !=0; i+, j+) strli=str2j;strli= O;printf( nstringl=%s,strl);運行結果:string 1 =goodmo ming4. #i nclude void mai n()(int i,j,pos;float val,a10;for(i=0;i10;i+)sea nf(n%f&ai)
18、;val=a0;for(j=0;jval)(val=aj;pos=j;)pri ntf(Max=%f,positi on ed,val,pos);10個數的最大值及其位置Max=9.000000,positio n:3本程序的功能是:從鍵盤輸入10個數存到數組 a中,求當程序運行時,從鍵盤輸入“ 1 029 3 847 5 6,運行結果:5. #in elude float average(i nt x , i nt n)(int i ;float sum=0;for(i=0;i n;i+)sum+=xi;return (sum/n);void mai n()int a5=(2,4,6,8,1
19、0);float rst;rst=average(a,5);printf( Hresult=%fn,rst);1運行結果:result=6.0000006, 給定如下程序:#i nclude void mai n()(char grade;sca nf(%c, &grade);switch (grade)(case A: prin tfC85 100nn); break;case B: printf( n70 84nn); break;case *C: prin tf(60 69nu); break;case D: printf(60n H); break;default: prin tfCe
20、rrorV n);當程序運行時,從鍵盤輸入“ D;輸岀的結果是:607, 給定如下程序:#i nclude void mai n()(in ta5=2,5,3,7,6,i,j,t;for (i=0;i4;i+)for (j=0;jaj+l)t=aj;aj=aj+l;aj+l=t;for (i=0; i5; i+)prin tf(%3d,ai);該程序的功能是:用“起泡法”對數組 a中的5個整數按由小到大排序并輸岀輸岀的結果為:2 3 5 6 78, 給定如下程序:#i nclude void fun()(auto int b=0;static int c=4;b+;C+;printf( nn”
21、,b,c);void mai n()(int i;for (i=0; i3; i+)fun ();運行結果是:b=l c=5b=l c=6b=l c=79. 給定如下程序:#i nclude #in clude void mai n()(char *pl, *p2, c, s50;gets(s);pl=s; p2=s+strle n( s)-l;for(; plp2; pl+, p2 )(c=*pl; *pl=*p2; *p2=c;pr in tf(The new str ing is %sn, s);此程序的功能是:從鍵盤輸入一字符串存放到數組s中,將此字符串逆序輸出當程序運行時,從鍵盤輸入
22、“ abcwe#y輸岀的結果是:The new stri ng is y# ew cba五、程序改錯(要求:不得增加或刪除語句,在括號中寫出錯誤語句并在其后橫線上更正。)1. 下列程序用來求任意兩整數的最大公約數,其中兩處有誤,請將程序改正。#i nclude void mai n()(int temp,m, n,x;pri ntf(E nter two n umbers: n);sca nf(%d,%d,&m,&n);if (m=l;x )if (m%x= =0&n %x= =0) con ti nue;printf(n最大公約數為:%dn,x);錯誤 1 : temp=m:m=n:n=te
23、mp:改正 1 : (temp=m:m=n:n=temp:錯誤 2: continue;改正 2: break;2. 下列程序用“起泡法”對輸入的10個字符按由大到小排序,其中3處有誤,請將程序改正。#in clude void main()(void sort(char a ,i nt m);char str1O,*p=str;int i;printf (”輸入10個字符:n” ;sca nf(%s, &str);sort(p,10);printf (”排序結果n” ;for (;pst r+10;)prin tf(%c,*p+);sort(char a ,i nt m)(int i.j ;
24、char c;for(i=l;im;i+)for(j=0;jm;j+)if(ajaj+l)(c=aj,aj=aj+l,aj+l=c;錯誤1 :scanf( % s” ,&str);改正 1 :scanf( % s” ,str);錯誤2 :sort (char L int m) 改正 2:void sort (char a L int m)錯誤3 :for (j=O;jvm;j+)改正 3 :for (j=0;jvm-i;j+)六、按要求編程1. 編寫0100之間偶數之和的程序。#i nclude void mai n()(int n um, sum=0;for (num=2; n um=100
25、; num=n um+2)sum=sum+num;pr in tf(sum=%dn , sum);2, 編程計算 l!+2!+3!+.+20!o #include void main()(float s=O,t=l;int n;for (n=l; nv=20; n+) t=t* n;s=s+t;printf( ” l!+2!+.+20!=%e ,s);3. 統計由鍵盤輸入的任意一串字符中空格的個數。#include void main()char ch;int space=0;while (ch=getchar( )!=n)if (ch= =*) space+;printf(konggeshu
26、=%dn,space);4. 編寫程序找出 1100 之間的素數,并統計素數的個數。 #include #include void main()( int m,k,i,n=0;for(m= 1 ;m= 100;m=m+2)( k=sqrt(m);for(i=2;i=k+l)( printf( 3”d” ,m);n=n+l;if(n%10= =0) printf(n);printf(ntotal number is=%d,n);5. 打印楊輝三角形 (10 行) 。要求:使用二維數組和循環語句實現。1 11 2 113 3 1#include void main()int a1010,i,j; for (i=0;i10;i+)(for (j=O;j=i;j+)(if(i=jllj=O)ai 山 =1;elseaij=ai-lj-l+ai-lj;printf(%6d,aij);printf(n);6. 從鍵盤輸入 10 個數,找出最大值與最小值,并計算它們的平均值。#include void main()( float a 10,aver,sum,max,min;int i;for(i=0;i10;i+)scanf(%f,&ai);max=min=a0;sum=a0;for(i=l;imax) max=ai;if(aimin) min=ai;sum=sum+ai;av
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 后勤主任培訓內容
- 膀胱脫垂日常護理
- 爭做健康陽光新時代好少年
- CRRT應用和護理要點
- 礦山資源開采權轉讓與經營合作合同
- 外企叉車安全培訓
- 餐飲場地臨時使用及環保責任承諾書
- 商業地產開發場地調研與風險評估合同協議
- 醫療服務市場調研合作合同
- 稅務籌劃與稅務審計常年服務協議
- 2025年安徽省中考數學試卷真題(含標準答案)
- 2025至2030年中國高純氧化鎂行業市場運行格局及前景戰略分析報告
- 婦女保健服務技術規范與診療常規
- 高級記者考試試題及答案
- 2025國家開放大學《高級財務會計》期末機考題庫
- R1快開門式壓力容器操作上崗證考試題及答案
- 貴州畢節中考試題及答案
- 道路人行天橋加裝電梯導則(試行)
- 中國廢舊輪胎橡膠粉項目投資計劃書
- 2025年河北省專技人員公需課《人工智能時代的機遇與挑戰-預訓練大模型與生成式AI》答案
- 2025-2030母嬰用品產業市場現狀供需分析及重點企業投資評估規劃分析研究報告
評論
0/150
提交評論