版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、C+語言程序設計習題參考答案 第一章 C+語言概述自測題 P2 1.1-1 C P8 1.2-1 形式參數(shù)表 1.2-2 main 1.2-3 ; 1.2-4 1.2-5 main 1.2-6 顯示器 輸出流 1.2-7 鍵盤 輸入流 1.2-8 頭文件 1.2-9 int f( );1.2-10 124 1.2-11 1.2-12 1.2-13 1.2-14 1.2-15 1.2-16 1.2-17 ABCFG 1.2-18 D1.2-19 D P11 1.3-1 OBJ 1.3-2 source.cpp習題一 (P12)1-1 1C 2類型修飾符 3main 4語句以分號(;)結束 5 6
2、 8.h 9source.obj 10Main 11char * Hi(const char *); 12331-2 1 2 3 4 5 6 7 81-3 1ABFI 2D 3ABCD 4B1-4 # include void main( ) cout ”C+語言程序設計”endl; 1-5 # include void main() int i,j,k;cout ijk;cout endli”+”j”+”k”=”i+j+ky+3 2.8-2 x!=3 & x=-3 2.8-3 B2.8-4 C 2.8-5 BC 2.8-6 AD2.8-7 D 2.8-8 C 2.8-9 A 2.8-10 C
3、D 2.8-11 D 2.8-12 B 2.8-13 !isMale Age=55 Age=50 & isMale Age100?100:0); 2. 7 3. 17 4. D:MyDirMyFile.Dat 5. C F 6. 48+n U 或 char(48+n) U 或 n+0 U 7. Jun thisMonth+1 ( 說明:VC+不支持枚舉數(shù)據(jù)參加算術運算,此例無法編譯)8. ( 說明:題目有錯,cin m; 編譯出錯,C+不支持枚舉數(shù)據(jù)輸入)9. 12.3456 9.87653e3 10. 3.66667 4.0 411. 57 45.0 G 12. 92 13. Whats y
4、our name? 14. 7715. 2 44 3 16. 7 4 317. 3 1 18. 6 1019. 3 7 20. 5 221. f=+p+5; 22. f=p-5;23. x+y=3 24. x=-525. a*a*a+3*a*a*a*b+3*a*b*b+b*b*b 26. 1.0/2*a*sqrt(b+2*c)/5) 27. IsMale Age30 Age=50|IsMale 2-3 2-4 1. B 2. A 3. AB 4. B 5. A 6. ABCD 7. CEFHI 8. CEFGHJ 9. C 10. C 11. A 12. AB 13. C2-5 / P50 習
5、題2-5 # include # include void main() double a,r; cout endla; r=1.0/2*a*sqrt(10+2*sqrt(5)/5); cout endl正五邊形外接圓的半徑:rendl;2-6 / P50 習題2-6# include # include void main()double a,b,c,area,s;cout endlabc;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c); cout endl三角形的面積:areaendl; 2-7 / P50 習題2-7# include # includ
6、e void main()double x1,y1,z1,x2,y2,z2,d;cout endlx1y1z1;cout endlx2y2z2;d=sqrt(x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)+(z2-z1)*(z2-z1); cout endl兩點間的距離:dendl;第三章 C+程序的流程控制自測題 P52 3.1-1 順序 條件分支 循環(huán) 只有一個入口和一個出口 P65 3.2-1 false 3.2-2 AB 3.2-3 B 3.2-4 t=x; x=y; y=t; 3.2-5 if (!OK) y=1; else if (READY) y=-1; else
7、y=0;3.2-6 1 2 3 n-1 3.2-7 XYZ 3.2-8 if (k=1 | k=2 | k=3) cout ”A”;else if (k=4 | k=5) cout ”B”; else cout =1 & k=3) cout =4 & k=5) cout ”B”; else cout ”C”;3.2-9 switch (x) case 0: case 1: case 2: cout ”X”; break; case 20: case 21: case 22: cout ”Y”; break; default : cout ”C”; break; ;3.2-10 ABD 3.2-
8、11 AD 3.2-12 BC 3.2-13 BCD P78 3.3-1 28 3.3-2 21 3.3-3 for ( int i=10; i100; i+ ) cout ”P”; 3.3-4 117 3.3-5 i=0; while (i10) cout 0; i- ) cout i; 習題三 (P82)3-1 1. y z或 z y 2. true 3. A 4. A 5. x+=y; y=x-y; x-=y; 6. y=OK?(READY?-1:0):1; 7. ABC 8. XYZ 9. ABC 10. 22 11. 23 12. for (int i=100; i; i-) cou
9、t P; 13. 4614. if (k=1 | k=2 ) cout A; else if ( k=3 | k=4 | k=5 ) cout B;else cout =1 & k=2 ) cout =3 & k=5 ) cout B;else cout C; 15. switch (x) case 1: case 2: case 3: cout X; break; case 19: case 20: case 21: case 22: cout Y; break; default : cout Z; break; 16. 133-2 1. ABC 2. ABD 3. C 4. ACD3-3
10、/ P84 習題3-3# include void main()int weekday;cout endlweekday;if (weekday=0)cout Sundayendl;else if (weekday=1)cout Mondayendl;else if (weekday=2)cout Tuesdayendl;else if (weekday=3)cout Wednesdayendl;else if (weekday=4)cout Thursdayendl;else if (weekday=5)cout Fridayendl;else if (weekday=6)cout Satu
11、rdayendl;else cout 表示星期幾的數(shù)必須在0-6之間!endl;3-4 / P84 習題3-4# include void main()int a,b,c,d,max;cout abcd;max=a;if (maxb) max=b;if (maxc) max=c;if (maxd) max=d;cout endl;cout 最大的數(shù)是:maxendl;3-5 / P84 習題3-5# include void main()int a,b,c,d,temp;cout abcd;cout 排序前:a b c db) temp=a; a=b; b=temp;if (ac) temp=
12、a; a=c; c=temp;if (ad) temp=a; a=d; d=temp;/ 求第二小數(shù)存入bif (bc) temp=b; b=c; c=temp;if (bd) temp=b; b=d; d=temp;/ 求第三小的數(shù)存入cif (cd) temp=c; c=d; d=temp;cout 排序后:a b c dendl;3-6 / P84 習題3-6# include void main()cout endl |; / 以下3行顯示頂部表欄 int i=1;while (i10)cout setw(3)i;i+;cout endl-+-;i=1;while (i10) / 乘數(shù)
13、從1 循環(huán)到9cout endlsetw(2)i|;int j=1;while (j10)cout setw(3)i*j; / 被乘數(shù)從1 循環(huán)到9j+;i+; coutendlendl;3-7 / P84 習題3-7# include void main()int a=1,b=2; double s=0,p;for (int i=1; i=20; i+)p=(double)b/a;s+=p;b+=a; / 產(chǎn)生分子a=b-a; / 產(chǎn)生分母cout 2/1+3/2+5/3+8/5+.=sendl;3-8 / P84 習題3-8# include # define N 15void main(
14、)int n; long double s=0.0L,fact=1.0L;for (n=1; n=N; n+) fact*=n; / 計算n! s+=fact;cout 1!+2!+.+N!=sendl;3-9 / P84 習題3-9 / 方法一# include void main()int n1=1,n2=1,n=n1+n2,couter=2; / n1,n2相鄰二項的分母,cout統(tǒng)計項數(shù) double s=2.0,s0;while (s0=1.0/n)=0.000001)s+=s0;n1=n2;n2=n;n=n1+n2;couter+; coutendlendl; cout 累加和:s
15、endl; cout 累加項數(shù):couterendl;/ 方法二# include void main()int n=2,d=1,k=2; / k統(tǒng)計項數(shù) double s=2.0,s0;while (s0=1.0/n)=0.000001)s+=s0;n+=d;d=n-d;k+; coutendlendl; cout 累加和:sendl; cout 累加項數(shù):kendl;3-10 / P84 習題3-10# include void main()for (int i=1; i=6; i+)cout endl;int j;for (j=1; ji; j+) cout ;for (j=1; j=1
16、3-i-i; j+) cout *;cout endlendl;3-11 / P81 習題3-11# include void main() cout setw(6)*; / 輸出頂* for (int i=0; i4; i+)cout endl;int j;for (j=0; j4-i; j+) / 輸出載邊空格cout ;cout *; / 輸出左*for (j=0; ji+i+1; j+) / 輸出中間空格cout ;cout *; / 輸出右*cout endl*;cout endlendl;3-12 / P81 習題3-12# include void main() int i;co
17、ut endl |; for (i=0; i=9; i+)cout setw(6)i;cout endl-+;for (i=0; i=10; i+) cout -;for (i=0; i=9; i+)cout endlsetw(5)i|;for (int j=0; j=9; j+)cout setw(6)(i*10+j)*(i*10+j);cout endlendl;3-13 / P81 習題3-13# include # include void main() double x;cout x;int i=1;double n=-x*x,d=1.0*2.0,s=1.0,s0;while (fa
18、bs(s0=n/d)=0.000001)s+=s0;i+;n*=(-x*x);d*=(i+i)*(i+i-1);cout 累加求值 COS(x)=sendl;cout 標準函數(shù) COS(x)=cos(x)endl;cout endlendl;第四章 數(shù) 組自測題 P93 4.1-1 (3,6,9,0,0) (0) (4) 4.1-2 (9,6,3) (0) (2)4.1-3 (100) (0) (99) 4.1-4 (ACD)4.1-5 int j=9 , j=0 ,-Tj 4.1-6 0 ,j10 ,j+ ,s+=TjP99 4.2-1 (5) (3) (15) (4) (2) 4.2-2
19、(2) (4) (8) (1) (3) (1,2,3,4)4.2-3 (3) (3) (9) (1,2,0,5,0,0,6,7,8) 4.2-4 int g5=1,1,2,1,2,3,1,2,3,4,1,2,3,4,5;4.2-5 0 , 6 , i+ , hii 4.2-6 0 , 5 , i+ , int j=0 , j3 , mij4.2-7 BCDP105 4.3-1 XABCD 4.3-2 net , internet4.3-3 strcpy(s3,s1); strcpy(s1,s2); strcpy(s2,s3);4.3-4 strcat(s3,s1); strcat(s3,s2)
20、 ; 或 strcat(strcat(s3,s1),s2)4.3-5 if ( !strcmp(s1,s2) ) cout s1endls20) cout s1endl;else cout s20 ) cout s1endl; else if (strcmp(s1,s2)0) cout s2endl; else cout s1endls2endl;或 if ( strcmp(s1,s2)0 ) cout s20) cout s1endl; else cout s1endls2endl;4.3-6 D 4.3-7 BCD習題四 (P107)4-1 1. ( 3,6,9,12 ) ( 0 ) (
21、3 ) 2. ( 9,6,3,0,0,0 ) ( 0 ) ( 5 ) 3. ( 50 ) ( 0 ) ( 49 ) 4. ( int j=0 ) ( j+=2 ) ( aj )5. ( 0 ) ( j=0 ) ( j18 ) ( s+=s0j ) ( /= ) (說明:題目的“并用s保存”改為“并用s0保存”) 6. ( 4 ) ( 11 ) ( 44 ) ( 3 ) ( 10 ) 7. ( 3 ) ( 5 ) ( 15 ) ( 2 ) ( 4 ) ( 1,2,3,0,0 , 5,6,0,0,0 , 8,0,0,0,0 ) 8. ( 4 ) ( 3 ) ( 12 ) ( 1,2,0,5,0,0
22、,6,7,8,0,0,0 ) 9. ( int g55=1,2,3,4,5,1,2,3,4,1,2,3; 10. ( int i=0 ) ( i8 ) ( hii ) 11. ( 0 ) ( 5 ) ( i+ ) ( int j=0 ) ( j3 ) ( m4-ij ) 12. ( “ABCD” ) 13. ( net ) ( in ) 14. ( aaabbbbccccc , bbbbccccc , ccccc ) 15. ( aaa , cccccaaa , ccccc )16. ( abc , abf , abcdabf )4-2 1. BCD 2. AB 3. CD 4. AC4-3
23、/ P109 習題4-3 # include # define SIZE 10void main()int aSIZE; int temp,i,max,min;cout 輸入SIZEa0;max=min=0; / 存放最大數(shù)和最小數(shù)的下標for (i=1; iai;if (aiamax) max=i; / 保存當前最大數(shù)的下標if (aiamin) min=i; / 保存當前最小數(shù)的下標cout endl交換前:;for (i=0; iSIZE; i+)cout ai ;temp=a0; a0=amax; amax=temp; / 最大數(shù)存首元素temp=aSIZE-1; aSIZE-1=am
24、in; amin=temp; / 最小數(shù)存末元素 cout endl交換后:;for (i=0; iSIZE; i+)cout ai ;cout endlendl;4-4 / P109 習題4-4 方法一:# include void main()int a=23,25,13,68,3,44,11,7,55,36;const int SIZE=sizeof(a)/sizeof(a0); / 數(shù)組a的元素個數(shù) int temp,i;cout endl處理前:;for (i=0; iSIZE; i+)cout ai ;for (i=0; i5; i+) / 找前5大數(shù)之一int k=i,j; /
25、k保存大數(shù)的下標for (j=5; jak) k=j; temp=ai; ai=ak; ak=temp; / 交換cout endl處理后:;for (i=0; iSIZE; i+)cout ai ;cout endlendl;方法二:/ P109 習題4-4 # include void main()int a=23,25,13,68,3,44,11,7,55,36;const int SIZE=sizeof(a)/sizeof(a0); / 數(shù)組a的元素個數(shù) int temp,i;cout endl處理前:;for (i=0; iSIZE; i+)cout ai ;for (i=0; i5
26、; i+) / 用選擇排序法排前5個數(shù)為大數(shù)int k=i,j; / k保存當前最大數(shù)的下標for (j=i+1; jak) k=j; temp=ai; ai=ak; ak=temp; / 交換cout endl處理后:;for (i=0; iSIZE; i+)cout ai ;cout endlendl;4-5 / P109 習題4-5# include # define SIZE 20void main()int aSIZE,i; cout endl請輸入SIZE個正整數(shù): ;for ( i=0; iai;while (ai=0);cout endl處理前: ;for (i=0; iSIZ
27、E; i+) cout ai ;cout endl;int j=0; / j為奇數(shù)存放下標 for (i=0; iSIZE; i+)if ( ai%2 ) / 條件成立,表示ai為奇數(shù)int temp=ai; ai=aj; aj=temp;j+; / 下一個奇數(shù)存放位置cout endl處理后: ;for (i=0; iSIZE; i+) cout ai ;cout endlendl;4-6 / P109 習題4-6# include void main() int a=23,25,13,68,3,44,11,7,55,36;const int SIZE=sizeof(a)/sizeof(a0
28、); / 數(shù)組a的元素個數(shù) int i,number; cout endlnumber;cout endlendl整數(shù)序列: ;for (i=0; iSIZE; i+) / 顯示數(shù)組元素 cout ai ;cout endlendl輸入數(shù): number的序號: ; for (i=0; iSIZE & ai!=number; i+) ; / 查找 cout (iSIZE)?i+1:0)endl; / 表達式中條件成立,表示找到cout endl;4-7 / P109 習題4-7# include # define SIZE 5void main() int aSIZESIZE;int i,j,
29、sum=0; cout endl請輸入SIZE行SIZE列整型數(shù)組: endl;for (i=0; iSIZE; i+)for (j=0; jaij;cout endlendlSIZE行SIZE列整型矩陣: ;for (i=0; iSIZE; i+) / 顯示二維數(shù)組元素cout endl;for (j=0; jSIZE; j+) cout setw(4)aij;for (i=0; iSIZE; i+)for (j=0; jSIZE; j+)if (i=0 | j=0 | i=SIZE-1 | j=SIZE-1)sum+=aij;cout endlendl矩陣四周元素的合計值: sumendl
30、endl;4-8 / P109 習題 4-8# include # include # define SIZE 10void main()double dataSIZESIZE;int i,j,size;cout size;if (size10)cout 行列式的階數(shù)要求在 1-10 之間.endl;return;/ 輸入行列式cout 請輸入size行size列的行列式:endl;for (i=0; isize; i+)for (j=0; jdataij;/ 輸出行列式cout endlendlsize行size列的行列式:endl; for (i=0; isize; i+)cout end
31、l;for (j=0; jsize; j+)cout setw(10)dataij; cout endl;/ 調(diào)用函數(shù)grmdet()計算行列式的值double grmdet(double aSIZE,int size); cout endlsize行size列的行列式的值為:;cout grmdet(data,size)endl;/ 計算行列式的值函數(shù)。以下函數(shù)定義參閱1982年12月第1版上海教育出版社出版/ 上海計算技術研究所編電子計算機算法手冊第295頁算法double grmdet(double aSIZE,int size)int i,j,k,n;double p,t,u;double mSIZE;for (i=0; isize; i+) u=0.0;for (j=0; ju) ) u=abs(aij);if (u1.0E-18) return 0.0;mi=u;if (u!=1)for (j=0; jsize; j+)aij/=u;p=1;for (k=0; ksize-
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 贛南醫(yī)學院《廣告造型基礎》2023-2024學年第一學期期末試卷
- 贛南師范大學科技學院《舞蹈藝術概論》2023-2024學年第一學期期末試卷
- 三年級數(shù)學上冊七年月日一天的時間說課稿北師大版
- 三年級數(shù)學上冊四兩三位數(shù)除以一位數(shù)第3課時除法的驗算教案蘇教版
- 小學生安全備課課件
- 2021中級電氣工程師完整復習試題及答案
- 小學生課堂發(fā)言制度管理
- 三年級健康教學參考計劃范文5篇
- 肝癌微波消融術
- 《愚人節(jié)中英文》課件
- 工會的財務管理制度〔13篇〕
- 新版醫(yī)務人員法律法規(guī)知識培訓課件
- 2024年土地市場研究分析服務協(xié)議
- 物業(yè)管理公文寫作培訓
- 2024期貨反洗錢培訓
- 2023醫(yī)療質量安全核心制度要點釋義(第二版)對比版
- 生態(tài)農(nóng)業(yè)示范基地項目可行性研究報告1
- 家庭教育大講堂實施方案
- 園林綠化工職業(yè)技能競賽理論考試試題題庫及答案
- 部編版《道德與法治》四年級下冊教材解讀與分析文檔
- 2024-2030年中國機場跑道異物碎片(FOD)檢測系統(tǒng)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
評論
0/150
提交評論