




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、C語言考試期末考試復習題及答案選擇題一個C語言程序總是從( )開始執行書寫順序的第一個函數書寫順序的第一條執行語句主函數main( ) 不確定設int x=3,y=4,z=5,則下列表達式中的值為0的是 ( ) A) x&yB) x|y+z&y-z C) x=yD) !(xy)&!z|1)執行以下程序段后,i的值是 ( ) int i=10; switch(i+1) case 10: i+; break; case 11: +i;case 12: +i; break;default : i=i+1; A) 11B) 13C) 12D) 14語句while(!e);中的條件!e等價于 ( )A)
2、 e=0B)e!=1C) e!=0D) 運行時出錯用 int a4=1,2; 對數組進行初始化后,數組元素a3的值是 ( )A) 隨機值B) 0C) 1 D) F在執行char str10=“china0”; strlen(str)的結果是 ( )A)5 B) 6D) 7D 9若有定義,char *p=”computer”; 則語句printf(“%c”,*(p+2)運行結果是 ( )A) 隨機值B) mC)oD) omputer在以下函數調用語句中 fun1(x,10,(x,10),fun2(y,10,(y,10);函數fun1參數的個數為 ( )A) 8B) 4C) 5 D) 編譯出錯(9
3、) 在說明一個結構體變量時系統分配給它的存儲空間是( )A)該結構體中第一個成員變量所需存儲空間 B) 該結構體中最后一個成員變量所需存儲空間 C)該結構體中占用最大存儲空間的成員變量所需存儲空間D) 該結構體中所有成員變量所需存儲空間的總和Key:CDCAB ABBD1. 用C語言編寫的代碼程序A)可立即執行 B)是一個源程序 C)經過編譯即可執行 D)經過編譯解釋才能執行 2. C語言中用于結構化程序設計的三種基本結構是A)順序結構、選擇結構、循環結構 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定義語句中正確的
4、是A)char a=Ab=B; float a=b=10.0;C)int a=10,*b=&a; D)float *a,b=&a;4.下列選項中,不能用作標識符的是A)_1234_ B)_1_2 C) int_2_ D)2_int_5.在函數調用過程中,如果函數funA調用了函數 funB,函數funB又調用了函數funA,則A)稱為函數的直接遞歸調用 B)稱為函數的間接遞歸調用C)稱為函數的循環調用 D)C語言中不允許這樣的遞歸調用6.以下敘述中正確的是 A)局部變量說明為static存儲類,其生存期將得到延長B)全局變量說明為static存儲類,其作用域將被擴大C)任何存儲類的變量在未賦初
5、值時,其值都是不確定的D)形參可以使用的存儲類說明符與局部變量完全相同7.若變量已正確定義,要求程序段完成求5!的計算,不能完成此操作的程序段是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(i=5);8.有以下程序main() char a=a,b; printf(%c,+a); printf(%cn,b=a+);程序運行后的輸出結果是a)b,b B)b,c C)a,b D)a,c9.有以下函數定義:void fun(
6、int n, double x) 若以下選項中的變量都已正確定義并賦值,則對函數fun的正確調用語句是fun(int y,double m); B)k=fun(10,12.5) C)fun(x,n); D)void fun(n,x)10.已定義c為字符型變量,則下列語句中正確的是A)c=97; B)c=97; C)c=97; D)c=a;11.以下能正確定義一維數組的選項是A)int num; B) #define N 100 C)int num0.100; D) int N=100;int numN; int numN;12.以下能正確定義數組并正確賦初值的語句是A)int N=5,bNN;
7、 B)int a12=1,3;C)int c2= 1,2,3,4; D)int d32=1,2,34;13.有以下程序main() int i;for (i=0; i3; i+)switch (i) case 1: printf(%d , i);case 2: printf(%d , i);default : printf(%d , i); 執行后輸出結果是A)011122 B)012 C)012020 D)12014.有以下程序main() int p7=11,13,14,15,16,17,18, i=0,k=0;while(i7 & pi%2) k =k+ pi; i+; printf(%
8、dn, k); 執行后輸出結果是A)58 B)56 C)45 D)2415.以下敘述中正確的是A)C語言比其他語言高級 B)C語言可以不用編譯就能被計算機識別執行 C)C語言以接近英語國家的自然語言和數學語言作為語言的表達形式D)C語言出現的最晚,具有其他語言的一切優點16.下列敘述中正確的是A)C語言中既有邏輯類型也有集合類型B)C語言中沒有邏輯類型但有集合類型 C)C語言中有邏輯類型但沒有集合類型D)C語言中既沒有邏輯類型也沒有集合類型17.以下敘述中正確的是A)C程序中注釋部分可以出現在程序中任意合適的地方B)花括號和只能作為函數體的定界符C)構成C程序的基本單位是函數,所有函數名都可以
9、由用戶命名D)分號是C語句之間的分隔符,不是語句的一部分Key:BACDB ABACC BDADC DA閱讀程序,寫出程序運行結果#includemain() char ch=A; ch=(ch=A& ch=Z)?(ch+32):ch; printf(“%c”,ch);程序的運行結果是: #includemain( ) int sum=0,i=11; while (i=10) sum=sum+i; i+; printf(“%d”,sum);程序的運行結果是: #includemain() char str =”1a2b3c”;int i; for(i=0;stri!=0;i+) if (str
10、i=0 & stri=9) printf(“%c”,stri);程序的運行結果是: main() int a,b; a=5; b=8; p(a,b); p(a+b,a);p(int x,int y) y=x+y; printf(“%d %d”,x,y);程序的運行結果是: #includevoid main() int a33=1,2,3,4,5,6,7,8,9; int j,s=1; for(j=0;j=2;j+) s=s*ajj; printf(%d,s);程序的運行結果是: Key: (1) a (2) 0 (3) 123 (4) 5 13 13 18 (5) 45三) 改錯題(每個程序
11、只有一個錯誤,填入錯誤語句所在的行號以及修改后的語句)(1)下段程序的功能是先輸入一個整數,然后將輸入的整數輸出。 main()int x; scanf(“%d”,x); printf(“x=%dn”,x); 行號: 改為: (2)下段程序的功能是求1+2+3+4+99+100的和。 1 main()2 int j=1,sum=0;3 while(j=100)4 sum=sum+j; j+;5 printf(“%d”,sum); 行號: 改為: (3)下段程序的功能是當輸入x的值為90時,輸出“right”,否則輸出“error”。 1 main()2 int x;3 if (x=90) pr
12、intf(“right”);4 else printf(“error”);行號: 改為: (4)下面程序的功能是輸出字符串S 1 main()2 char s=”china”; 3 printf(“s=%sn”,s);行號: 改為: (5)下面程序的功能是按照下面的格式輸入a和b的值,計算y=a2+b2并輸出。輸入: 3 2 (輸出: y=131 main()2 int a,b;3 int y;4 scanf(“a=%d,b=%d”,&a,&b);5 y=a*a+b*b;6 printf(“y=%dn”,y); 7 行號: 改為: Key:(1)行號:3 改為:scanf(“%d”,&x);
13、(2)行號:4 改為: sum=sum+j; j+; (3)行號:3 改為:if (x= =90) printf(“right”); (4)行號:3 改為:printf(“s=%sn”,s); (5)行號:4 改為:scanf(“%d %d”,&a,&b);二、填空題1.以下程序輸入3個整數值給a,b,c,變量b中的值給a,變量c中的值給b,變量a中的值給c,交換后輸出a,b,c的值。#include main() int a,b,c,_; printf(enter a,b,c);scanf(%d%d%d,&a,&b,&c); _;_;_;_; printf(%d,%d,%d,a,b,c);
14、2.求出200以內的整數中,最大的可以被17整除的數是哪個數。include _int i; for(_;_;i-)if(_) break;printf(%dn,_);3.以下程序從終端讀入數據到數組中,統計其中正數的個數,并計算它們之和。main() int i,a20,sun,count;sum=count=0;for(i=0;i0) count+; sum+= _ ; printf(sum=%d,count=%dn,_,_);4.以下程序的功能是調用函數fun計算:m=1+2+3+4+9+10,并輸出結果。請填空。int fun( int n) int m=0,i;for(i=_; i=
15、n; _) m=_;return _;main() printf(m=%dn, _); 5.以下程序將數組中的數據按逆序存放。include #define SIZE 12main()int aSIZE,i,j,t; for(i=0;iSIZE;i+) scanf(%d,_); i=0;j=_; while(ij) t=ai;_ _;_;i+;j_for(i=0;i0_i%17=0_i_ai_i20_i_sum_count_1_i+_m_+i_m_fun(10)_ai_SIZE_ai=ajaj=tj_-三、程序設計題目編寫程序,打印下列圖案* * * * * * * * * * *2.某數列前
16、兩項分別為1和2,其后每項為前兩項之和,求此數列的第10個數。3.一個8層的燈塔,每一層的燈數是上一層的2倍,一共有765盞燈,求燈塔底層的燈數。從鍵盤輸入一個華氏溫度,要求輸出攝氏溫度,公式為C=5*(F-32)/9編寫一個函數求y=(a-b)(a+b),主函數用以輸入a,b的值和輸出y值。 編一程序:從鍵盤輸入10個整數,計算并輸出這10個數的平均數。通過鍵盤輸入3*4矩陣,編寫一個函數求所有元素中的最大值,其中主函數完成3*4矩陣的輸入和最大元素的輸出。 Key:3. (1) main() float c,f; scanf(“%f”,&f); c=5.0*(f-32)/9; printf(“c=%f”,c); (2) int f(int a,int b) return (a-b)*(a+b); main() int a,b; scanf(“%d,%d”,&a,&b); printf(“y=%d”,f(a,b); (3) main() int a10,j;float ave=0; for (j=0;j10;j+) scanf(“%d”,&aj); ave=av
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 1.3.2 動物體的結構層次 課件 人教版七年級上冊
- 2025年上海市交大二附中英語七下期末學業質量監測試題含答案
- 2025年傳統醫學與現代療法課程測試試題及答案
- 2025年電氣工程師資格考試試卷及答案公布
- 中班生活技能直播課件
- 摘棉花美術課件
- 農業生產工具設備租賃合作協議
- 2025年鶴壁危運貨物駕駛資格考試
- 2025年安徽出租車上崗考試內容
- 商業合作加盟協議書細節內容
- 南岸區小升初試題及答案
- 監護人安全培訓試卷(答案)
- 小學綜合實踐活動與勞動教育有效整合的策略研究
- 《中國慢性阻塞性肺疾病基層診療與管理指南(2024年)》解讀課件
- 環保設備行業市場分析與銷售技巧課件
- 細胞器互作機制-深度研究
- JJF1033-2023計量標準考核規范
- 個人閱兵申請書
- 人工智能導論-第2版-全套課件
- 電大《Python語言基礎》實驗6:文件讀寫基本操作
- 中國廚電用微晶玻璃行業市場競爭現狀及發展前景研判報告
評論
0/150
提交評論