![(完整版)《C語言程序設(shè)計》課后習(xí)題答案(第四版)譚浩強_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/4553a1cf-128c-4e88-8da5-57b29fe60655/4553a1cf-128c-4e88-8da5-57b29fe606551.gif)
![(完整版)《C語言程序設(shè)計》課后習(xí)題答案(第四版)譚浩強_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/4553a1cf-128c-4e88-8da5-57b29fe60655/4553a1cf-128c-4e88-8da5-57b29fe606552.gif)
![(完整版)《C語言程序設(shè)計》課后習(xí)題答案(第四版)譚浩強_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/27/4553a1cf-128c-4e88-8da5-57b29fe60655/4553a1cf-128c-4e88-8da5-57b29fe606553.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強第 1 章程序設(shè)計和c語言 1 1.1 什么是計算機(jī)程序1 1.2 什么是計算機(jī)語言1 1.3c 語言的發(fā)展及其特點3 1。4 最簡單的 c語言程序 5 1.4 。1 最簡單的 c語言程序舉例6 1.4.2c 語言程序的結(jié)構(gòu)10 1.5 運行 c程序的步驟和方法12 1.6 程序設(shè)計的任務(wù)1415 #include stdio.hint main ( )printf (”* * * * *nn); printf( very good!nn) ; p rintf (”* * * * * * *n); return 0;16inclu
2、de stdio.hint main()int a,b,c,max; printf(please input a,b,c : n”);scanf( ”%d , %d,d”,&a,b,c) ; max=a; if (max b) max=b; if (max c) max=c;printf(”the largest number is n”,max ) ; return 0;第 2 章算法程序的靈魂16 2.1 什么是算法 16 2.2 簡單的算法舉例17 2。3 算法的特性 21 2。4 怎樣表示一個算法22 2。4。1 用自然語言表示算法22 2。4。2 用流程圖表示算法22 2。4
3、。3 三種基本結(jié)構(gòu)和改進(jìn)的流程圖26 2。4.4 用 ns流程圖表示算法28 ( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強2。4.5 用偽代碼表示算法31 2。4.6 用計算機(jī)語言表示算法32 2.5 結(jié)構(gòu)化程序設(shè)計方法34 習(xí)題 36 第章最簡單的 c程序設(shè)計順序程序設(shè)計37 3。1 順序程序設(shè)計舉例37 3.2 數(shù)據(jù)的表現(xiàn)形式及其運算39 3.2。1 常量和變量 39 3.2.2 數(shù)據(jù)類型 42 3.2.3 整型數(shù)據(jù) 44 3。2。4 字符型數(shù)據(jù) 47 3。2.5 浮點型數(shù)據(jù) 49 3。2。6 怎樣確定常量的類型51 3。2.7 運算符和表達(dá)式52 3。3c語句 57
4、3.3。1c語句的作用和分類57 3.3。2 最基本的語句賦值語句59 3.4 數(shù)據(jù)的輸入輸出65 3.4.1 輸入輸出舉例 65 3。4。2 有關(guān)數(shù)據(jù)輸入輸出的概念67 3.4。3 用 printf函數(shù)輸出數(shù)據(jù)68 3。4.4 用 scanf 函數(shù)輸入數(shù)據(jù)75 3.4.5 字符數(shù)據(jù)的輸入輸出78 習(xí)題 82 31 #include include math.hint main()float p,r,n; r=0 。1; n=10; p=pow(1+r ,n); printf(p=fn,p); return 0;321#include include math。hint main()float
5、 r5,r3,r2,r1,r0 ,p,p1,p2 ,p3,p4,p5; p=1000; r5=0.0585; r3=0 。054; r2=0.0468 ; r1=0 。0414; r0=0.0072 ; p1=p* ((1+r5 )5); / 一次存 5 年期( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 p2=p(1+2r2) (1+3r3) ; / 先存 2 年期,到期后將本息再存3 年期 p3=p* (1+3*r3)*(1+2*r2); / 先存 3 年期, 到期后將本息再存2 年期 p4=ppow(1+r1,5 ) ; / 存 1 年期 ,到期后將本息存再存1 年期,
6、連續(xù)存5 次 p5=p*pow(1+r0/4,45) ; / 存活期存款?;钇诶⒚恳患径冉Y(jié)算一次 printf(”p1=%fn”,p1); / 輸出按第 1 方案得到的本息和 printf(p2=fn ” ,p2); / 輸出按第 2 方案得到的本息和 printf(p3=fn ”,p3) ; / 輸出按第 3 方案得到的本息和 printf(p4=%fn,p4) ; / 輸出按第 4 方案得到的本息和 printf(”p5=%fn” ,p5); / 輸出按第 5 方案得到的本息和 return 0;3-2-2include #include math 。hint main()double
7、r5,r3,r2,r1 ,r0,p,p1 ,p2,p3 ,p4,p5; p=1000; r5=0 。0585; r3=0 。054; r2=0 。0468; r1=0 。0414; r0=0 。0072; p1=p(1+r5 )5); / 一次存 5 年期 p2=p*(1+2 r2)*(1+3*r3 ); / 先存 2 年期, 到期后將本息再存3 年期 p3=p(1+3r3 )*(1+2*r2 ); / 先存 3 年期,到期后將本息再存2 年期 p4=ppow(1+r1,5) ; / 存 1 年期,到期后將本息存再存1 年期,連續(xù)存5 次 p5=ppow(1+r0/4 ,4*5) ; / 存活
8、期存款 . 活期利息每一季度結(jié)算一次 printf(”p1=%fn” ,p1); / 輸出按第 1 方案得到的本息和 printf(”p2=fn ”,p2) ; / 輸出按第 2 方案得到的本息和 printf(p3=fn,p3); / 輸出按第 3 方案得到的本息和 printf(p4=%fn ,p4) ; / 輸出按第 4 方案得到的本息和 printf(p5=%fn ,p5); / 輸出按第 5 方案得到的本息和 return 0;323include include int main()float r5,r3,r2,r1 ,r0,p,p1,p2 ,p3,p4 ,p5; p=1000;
9、r5=0.0585; r3=0 。054; r2=0.0468 ; r1=0 。0414; r0=0.0072; p1=p(1+r5 )*5) ; / 一次存 5 年期 p2=p* (1+2*r2)* (1+3*r3) ; / 先存 2 年期, 到期后將本息再存3 年期 p3=p(1+3r3 )(1+2*r2 ) ; / 先存 3 年期, 到期后將本息再存2 年期( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 p4=p*pow(1+r1,5) ; / 存 1 年期,到期后將本息存再存1 年期,連續(xù)存5 次 p5=ppow(1+r0/4,4*5 ); / 存活期存款 . 活期利
10、息每一季度結(jié)算一次 printf(p1=10.2fn,p1); / 輸出按第 1 方案得到的本息和 printf(p2=%10。2fn,p2); / 輸出按第 2 方案得到的本息和 printf(p3=10.2fn ”,p3) ; / 輸出按第 3 方案得到的本息和 printf(p4=%10。2fn ” ,p4); / 輸出按第 4 方案得到的本息和 printf(p5=10。2fn ” ,p5); / 輸出按第 5 方案得到的本息和 return 0;33.#include stdio.hinclude math.hint main()float d=300000,p=6000,r=0。0
11、1,m; m=log10 (p/ (p-d*r ) )/log10 (1+r); printf( ”m= n”, m); return 0;34include int main()int c1,c2; c1=197; c2=198; printf(”c1=%c , c2=cn ,c1,c2); printf(c1=d,c2=dn ” ,c1,c2 ) ; return 0;35include int main()int a,b; float x,y; char c1 ,c2; scanf(a=%d b=%d,a,b) ; scanf (%f e, x,&y); scanf(cc ,c1
12、, c2); printf(a=d,b=%d,x=f ,y=f ,c1=%c ,c2=cn ,a,b,x,y ,c1,c2) ; return 0;3-6include stdio.hint main()char c1= c,c2=h,c3=i,c4=n,c5=a ; c1=c1+4 ; c2=c2+4 ; c3=c3+4 ; c4=c4+4;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 c5=c5+4 ; printf(”passwor is c%c%c c%cn,c1,c2,c3 ,c4,c5) ; return 0;37include stdio.hint main
13、()float h,r,l,s,sq,vq,vz; float pi=3.141526; printf(請輸入圓半徑 r ,圓柱高 h) ; scanf (f ,%f,r,h) ; /要求輸入圓半徑r 和圓柱高 h l=2*pi*r; /計算圓周長 l s=r r*pi; /計算圓面積 s sq=4*pi*rr; /計算圓球表面積sq vq=3 。0/4 。0pi rrr; /計算圓球體積vq vz=pi*r*r*h; /計算圓柱體積vz printf(圓周長為: l=%6.2fn,l) ; printf(”圓面積為: s=%6.2fn,s); printf(圓球表面積為 : sq=6.2fn
14、 ”,sq) ; printf(圓球體積為 : v=%6.2fn”,vq ) ; printf(圓柱體積為 : vz=6。2fn ,vz); return 0;381#include stdio.hint main() int c1,c2; /整型定義 printf(”請輸入兩個整數(shù)c1,c2 : ”); sc anf( ” d,%d ,c1, c2) ; printf(”按字符輸出結(jié)果:n ”);printf(”%c, cn,c1,c2) ; printf(按 ascii 碼輸出結(jié)果為: n) ; printf(”%d,n”, c1,c2) ; return 0;3-8-2include s
15、tdio.hint main() char c1,c2; /定義字符型變量 int i1,i2; /定義整型變量 printf(請輸入兩個字符c1,c2: ) ; scanf(%c,%c ”,&c1, c2) ; i1=c1; /賦值給整型變量 i2=c2; printf(”按字符輸出結(jié)果 :n ); printf(n”,i1 ,i2) ;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 printf(”按整數(shù)輸出結(jié)果 :n ”) ; printf(”%d,%dn”,c1,c2); return 0;3-83#include int main()char c1,c2 ;
16、printf(”請輸入兩個字符c1,c2:) ;c1=getchar( );c2=getchar ();printf(用 putchar 語句輸出結(jié)果為: );putchar(c1);putchar(c2);n”);printf(用 printf語句輸出結(jié)果為 :) ;printf(c cn ,c1,c2) ;return 0;第 4 章選擇結(jié)構(gòu)程序設(shè)計85 4。1 選擇結(jié)構(gòu)和條件判斷85 4。2 用 if語句實現(xiàn)選擇結(jié)構(gòu)87 4.2。1 用 if語句處理選擇結(jié)構(gòu)舉例87 4.2.2if語句的一般形式 89 4。3 關(guān)系運算符和關(guān)系表達(dá)式91 4。3。1 關(guān)系運算符及其優(yōu)先次序91 4.3.2
17、 關(guān)系表達(dá)式 92 4。4 邏輯運算符和邏輯表達(dá)式92 4.4。1 邏輯運算符及其優(yōu)先次序93 4。4。2 邏輯表達(dá)式 94 4。4。3 邏輯型變量 96 ( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強4.5 條件運算符和條件表達(dá)式97 4.6 選擇結(jié)構(gòu)的嵌套99 4.7 用 switch 語句實現(xiàn)多分支選擇結(jié)構(gòu)102 4。8 選擇結(jié)構(gòu)程序綜合舉例105 習(xí)題 1114-4-1#include stdio。hint main() int a,b,c; printf(”請輸入三個整數(shù) : ”);scanf( ”%d , d,d”, &a,&b,c) ; if (
18、ab) if (bc) printf(”max=%dn”,c); elsen”,b) ; else if (ac) printf(max=n”, c) ; else printf(max=%dn,a) ; return 0;4-42#include b)?a:b; /*將 a 和 b 中的大者存入 temp 中*/ max= (tempc)?temp :c; /將 a 和 b 中的大者和 c 比較 , 取最大者 / printf(三個整數(shù)的最大數(shù)是%dn” ,max); return 0;4-52include stdio.hinclude define m 1000int main() in
19、t i,k; printf(”請輸入一個小于 %d的整數(shù) i : ” ,m ) ;scanf( ”d”,&i); while (im) printf(輸入的數(shù)不符合要求,請重新輸入一個小于%d的整數(shù) i: ,m);scanf(%d ”,&i) ; k=sqrt(i);( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 printf(%d的平方根的整數(shù)部分是:dn ”,i ,k) ; return 0;45include include math.hdefine m 1000int main() int i,k; printf(”請輸入一個小于 %d的整數(shù) i:,m
20、 );scanf( ”%d, i ) ; if (im)printf(輸入的數(shù)不符合要求,請重新輸入一個小于d 的整數(shù) i :,m); scanf(”%d ”,&i) ; k=sqrt(i); printf(”d 的平方根的整數(shù)部分是:%dn” ,i ,k); return 0;46。#include stdio.hint main() int x,y; printf(”輸入 x: ”); scanf(d”, x); if(x1) / x1 / y=x; printf(x=3d, y=x=%dn ,x,y) ; else if(x10) /* 1=x10 */ y=2 x1; prin
21、tf(x= d, y=2 x-1=dn ,x,y);else / x =10 */ y=3*x-11; printf(x= d, y=3 x11=n”,x,y ) ; return 0;4-71include int main() int x,y; printf(enter x:); scanf(”%d , &x); y= 1;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 if(x!=0) if(x0) y=1; else y=0; printf(”x=%d ,n”,x,y); return 0;4-72#include int main() int x,y; pr
22、intf(please enter x:) ; scanf(” d, x) ; y=0; if(x=0) if(x0) y=1 ; else y=-1; printf(”x=%d , y=dn ,x,y ); return 0;4-8#include int main() float score; char grade; printf(請輸入學(xué)生成績 : ) ; scanf(%f,&score ) ; while (score 100| scoreint main() int num,indiv,ten,hundred,thousand,ten_thousand ,place ; /分
23、別代表個位,十位, 百位,千位,萬位和位數(shù) printf(請輸入一個整數(shù)( 0-99999) :) ; scanf(”d”, &num) ; if (num9999) place=5; else if (num999 ) place=4; else if (num 99) place=3; else if (num9 ) place=2; else place=1; printf(位數(shù): %dn” ,place ); printf(”每位數(shù)字為:”); ten_thousand=num/10000; thousand=(int)(num-ten_thousand 10000)/1000
24、 ; hundred= (int )(num-ten_thousand*10000-thousand1000)/100 ; ten=(int)(numten_thousand 10000-thousand 1000-hundred*100)/10; indiv=(int )(numten_thousand 10000thousand 1000-hundred 100-ten 10); switch(place) case 5:printf(%d,d,%d ,d,d,ten_thousand,thousand,hundred,ten,indiv ); printf(n反序數(shù)字為:” ); pri
25、ntf(%dddd%dn,indiv,ten,hundred,thousand ,ten_thousand) ; break; case 4:printf(d, d,%d,%d ,thousand ,hundred,ten ,indiv ) ; printf(n 反序數(shù)字為:” ); printf(%dd%d dn ,indiv ,ten,hundred ,thousand) ; break; case 3:printf(%d,d, d”,hundred,ten,indiv); printf(n反序數(shù)字為: ) ;printf(” dddn ,indiv,ten,hundred); break
26、;case 2:printf(”%d,d”, ten,indiv); printf(”n 反序數(shù)字為: ) ; printf(”n”,indiv, ten ) ; break; case 1:printf(d,indiv ); printf(”n 反序數(shù)字為: ) ; printf(”%d n”,indiv); break; ( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 return 0;410-1#include int main() int i; double bonus,bon1,bon2,bon4,bon6,bon10; bon1=100000 0。1; bon2=
27、bon1+100000*0 。075; bon4=bon2+100000 0.05; bon6=bon4+100000 0.03; bon10=bon6+400000 0。015; printf(請輸入利潤 i: ” ) ; scanf(”%d ”, &i) ; if (i=100000) bonus=i0.1 ; else if (i=200000) bonus=bon1+(i 100000)0。075; else if (i=400000) bonus=bon2+(i-200000 )*0。05; else if (i10) branch=10; switch(branch) ca
28、se 0:bonus=i0。1;break;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 case 1:bonus=bon1+(i-100000)*0。075;break; case 2: case 3: bonus=bon2+(i-200000 )*0。05;break; case 4: case 5: bonus=bon4+(i 400000)*0 。03;break; case 6: case 7: case 8: case 9: bonus=bon6+(i-600000 )0。015;break; case 10: bonus=bon10+(i1000000)*0。
29、01; printf(”獎金是 %10.2fn ”,bonus); return 0;411#include int main() int t,a,b,c,d; printf(請輸入四個數(shù): ) ; scanf(d,%d ,%d,%d,&a,b,&c,d) ; printf(a=d,b=%d,c=%d ,d=dn ,a,b,c,d ); if (ab) t=a;a=b;b=t; if (ac) t=a ;a=c;c=t ; if (ad) t=a ;a=d;d=t; if (bc) t=b ;b=c;c=t ; if (bd) t=b;b=d ;d=t; if (cd) t=c
30、;c=d ;d=t; printf(排序結(jié)果如下: n);printf(”%d d %d %d n ,a,b,c,d); return 0;412include stdio.hint main() int h=10; float x1=2,y1=2,x2=-2,y2=2,x3= 2,y3=2,x4=2 ,y4=2,x,y,d1,d2 ,d3,d4 ; printf(”請輸入一個點 (x,y) : ” ) ;scanf( ”%f, %f,x,y) ; d1=(x x4)( xx4)+(y-y4 )( y-y4 ) ; /求該點到各中心點距離*/ d2=(x x1)*(x x1)+(yy1)*(y
31、 y1); d3=(x-x2)( xx2)+(y-y2 )( yy2) ;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 d4= (xx3)* (xx3)+(y-y3)(y-y3) ; if (d11 & d21 & d31 & d41) h=0; / 判斷該點是否在塔外/ printf(”該點高度為 %dn ,h); return 0; 第 5 章循環(huán)結(jié)構(gòu)程序設(shè)計114 5.1 為什么需要循環(huán)控制114 5.2 用 while 語句實現(xiàn)循環(huán)115 5。3 用 dowhile語句實現(xiàn)循環(huán) 117 5.4 用 for 語句實現(xiàn)循環(huán)120 5。5 循環(huán)的嵌
32、套 124 5.6 幾種循環(huán)的比較125 5。7 改變循環(huán)執(zhí)行的狀態(tài)125 5.7。1 用 break 語句提前終止循環(huán)126 5.7.2 用 continue語句提前結(jié)束本次循環(huán)127 5.7。3break 語句和 continue語句的區(qū)別 128 5.8 循環(huán)程序舉例131 習(xí)題 1405-2#include stdio.hinclude math。h / 程序中用到數(shù)學(xué)函數(shù)fabs, 應(yīng)包含頭文件math。nint main() int sign=1,count=0; / sign用來表示數(shù)值的符號,count 用來統(tǒng)計循環(huán)次數(shù) double pi=0.0,n=1。0,term=1。0
33、; / pi開始代表多項式的值,最后代表的值, n 代表分母,term 代表當(dāng)前項的值 while(fabs(term)=1e-8) / 檢查當(dāng)前項 term 的絕對值是否大于或等于10的(-6 )次方 pi=pi+term; / 把當(dāng)前項 term 累加到 pi 中 n=n+2; / n+2是下一項的分母 sign=sign ; / sign代表符號,下一項的符號和上一項符號相反 term=sign/n; / 求出下一項的值term count+; / count累加 1 pi=pi4; / 多項式的和 pi 乘以 4,才是的近似值 printf(pi= 10.8fn,pi) ; / 輸出的
34、近似值 printf(”count=%dn,count); / 輸出循環(huán)次數(shù) return 0;53include int main() int p,r,n,m ,temp; printf(請輸入兩個正整數(shù)n,m:) ; scanf(%d,%d, n,&m); if (n=a c=0 & c =9) digit+; else other+; printf(” 字母數(shù): dn 空格數(shù) : dn 數(shù)字?jǐn)?shù):%dn其它字符數(shù) : dn , letters, space,digit,other) ; return 0;5-5#include int main() int a,n,i=1,
35、sn=0 ,tn=0; printf(a,n= :”) ; scanf(”%d , %d,a,&n); while (i=n) tn=tn+a; /賦值后的 tn 為 i 個 a 組成數(shù)的值 */ sn=sn+tn; /賦值后的 sn 為多項式前 i 項之和 */ a=a*10;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 +i ; printf(”a+aa+aaa+.。 .=n”,sn ) ; return 0;56include stdio.hint main() double s=0,t=1 ; int n; for (n=1;n=20;n+) t=tn; s
36、=s+t; printf(”1!+2!+ 。 . 。+20!=%22.15en ,s); return 0;5-7include int main() int n1=100,n2=50,n3=10; double k,s1=0,s2=0,s3=0 ; for (k=1;k=n1;k+) /計算 1 到 100 的和*/s1=s1+k; for (k=1;k=n2;k+ ) /計算 1 到 50 各數(shù)的平方和 */ s2=s2+kk; for (k=1;k=n3;k+) /計算 1 到 10 的各倒數(shù)和 */s3=s3+1/k; printf(sum=n”, s1+s2+s3); return
37、0; 5-8#include stdio 。hint main() int i,j ,k,n;printf(”parcissus numbers are ); for (n=100;nint main() int k1,k2,k3,k4,k5 ,k6,k7 ,k8,k9,k10 ; int i,a,n,s; for (a=2;a=m ;a+) / a 是 21000 之間的整數(shù),檢查它是否完數(shù) */n=0; /* n用來累計 a 的因子的個數(shù) */ s=a; / s 用來存放尚未求出的因子之和, 開始時等于 a / for (i=1;i1) printf(%d,d,k1,k2); /* n1表
38、示 a 至少有 2 個因子 / if (n2) printf(”, d,k3 ); / n2 表示至少有 3 個因子,故應(yīng)再輸出一個因子*/ if (n 3) printf(” ,d,k4 ); / n 3 表示至少有 4 個因子,故應(yīng)再輸出一個因子 / if (n4) printf(,%d ” ,k5); /以下類似/( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 if (n5) printf(,%d ,k6) ; if (n6)printf(”,%d”, k7) ; if (n7) printf(,d,k8); if (n8)printf(”,d”,k9) ; if (n
39、9) printf(”, d ,k10);n”) ; return 0;5-9-2#include int main()int m ,s,i; for (m=2;m 1000;m+ )s=0; for (i=1;im ;i+) if (m%i)=0) s=s+i; if(s=m)printf(” d,its factors are ”,m); for (i=1;i int main() int i,n=20; double a=2,b=1,s=0,t ; for (i=1;i =n;i+ ) s=s+a/b; t=a, a=a+b, b=t; printf(”sum= 16.10fn,s);
40、return 0;5-11include stdio.hint main() double sn=100,hn=sn/2;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 int n; for (n=2;n=10;n+) sn=sn+2*hn; /第 n 次落地時共經(jīng)過的米數(shù)*/ hn=hn/2; /第 n 次反跳高度 / printf(第 10 次落地時共經(jīng)過 %f米n ” ,sn); printf(第 10 次反彈 f 米n,hn); return 0; 512include int main() int day,x1,x2; day=9; x2=1; while(day0
41、)x1=(x2+1) 2; /第 1 天的桃子數(shù)是第2 天桃子數(shù)加 1 后的 2 倍。 / x2=x1; day-; printf(total=dn,x1 ); return 0;5-13#include #include int main() float a,x0,x1 ; printf(enter a positive number:”); scanf(%f, a); x0=a/2 ; x1= (x0+a/x0)/2 ; dox0=x1; x1=(x0+a/x0 )/2; while(fabs (x0-x1 )=1e-5); printf(”the sq uare root of %5。n
42、”,a,x1) ; return 0; 5-14include stdio.hinclude int main()double x1 ,x0,f ,f1 ; x1=1 。5;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 dox0=x1; f=( (2*x0-4)*x0+3)x0-6; f1=(6x0-8 )x0+3; x1=x0-f/f1;while (fabs(x1 x0)=1e5); printf(the root of equation is 5。2fn,x1); return 0; 5-15include stdio.hinclude 0); do x0=(x1+x
43、2)/2 ; fx0=x0*(2x0-4)*x0+3 )-6; if ((fx0*fx1) 0) x2=x0; fx2=fx0; else x1=x0; fx1=fx0; while (fabs (fx0)=1e5);printf(”x= 6。n”,x0 ) ; return 0;5-16#include stdio.hint main()int i,j,k ; for (i=0;i=3 ;i+) for (j=0;j=2i ;j+ ) printf(” ); for (k=0;k=2*i ;k+) printf( ) ; printf(n”) ; for (i=0;i=2 ;i+) for
44、(j=0 ;j=i;j+)( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 printf( ”) ; for (k=0;k=4-2*i;k+) printf(”*”); printf(n”); return 0;517include stdio。hint main() char i,j,k ; /*是 a 的對手; j 是 b 的對手 ;k 是 c 的對手 */ for (i= x ;i=z;i+)for (j=x;j =z ; j+) if (i!=j) for (k=x ;k=z;k+)if (i !=k & j !=k) if (i!=x & k!=x &
45、amp; k!= z ) printf(a-%cnb- cnc cn,i,j ,k); return 0;第 6 章利用數(shù)組處理批量數(shù)據(jù)142 6。1 怎樣定義和引用一維數(shù)組142 6。1。1 怎樣定義一維數(shù)組143 6。1.2 怎樣引用一維數(shù)組元素144 6.1.3 一維數(shù)組的初始化145 6.1。4 一維數(shù)組程序舉例146 6。2 怎樣定義和引用二維數(shù)組148 6.2.1 怎樣定義二維數(shù)組149 6。2。2 怎樣引用二維數(shù)組的元素150 6。2.3 二維數(shù)組的初始化151 6。2。4 二維數(shù)組程序舉例152 6.3 字符數(shù)組 154 6.3.1 怎樣定義字符數(shù)組154 6。3。2 字符數(shù)組
46、的初始化155 6。3.3 怎樣引用字符數(shù)組中的元素155 6。3.4 字符串和字符串結(jié)束標(biāo)志156 6.3。5 字符數(shù)組的輸入輸出159 6。3。6 使用字符串處理函數(shù)161 6.3。7 字符數(shù)組使用舉例165 習(xí)題 1686-1#include stdio.h#include math 。hint main()int i,j,n ,a101 ; for (i=1;i=100;i+ ) ai =i ;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 a1 =0; for (i=2;isqrt (100);i+ ) for (j=i+1 ;j =100;j+) if(ai !=
47、0 & a j!=0 ) if (aj ai =0) aj=0; n”); for (i=2,n=0;i=100;i+ ) if(ai!=0)printf(5d,ai) ; n+; if(n=10)printf(” n”) ; n=0; printf(n) ; return 0;6-2#include int main()int i,j,min,temp,a11; printf(”enter data:n ); for (i=1;i =10;i+)printf(ad= ,i); scanf(”%d,&a i ) ; printf(” n”) ; printf(the orgin
48、al numbers:n ) ; for (i=1 ;i =10;i+ ) printf(%5d,ai ) ;printf(” n”); for (i=1;iaj) min=j; temp=ai ; ai=amin ; amin=temp;printf(”nthe sorted numbers: n”); for (i=1 ;i =10;i+ ) printf(%5d,ai ); printf(”n ); return 0;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 6-3include stdio 。hint main()int a3 3 ,sum=0;int i,j
49、; printf(enter data:n); for (i=0;iint main() int a11=1,4,6,9,13 ,16,19,28,40 ,100 ; int temp1,temp2,number,end,i,j; printf(array a: n”); for (i=0;iend) a10=number; else for (i=0;inumber) temp1=ai ;ai=number;for (j=i+1;j11;j+) temp2=aj; aj=temp1; temp1=temp2; break;printf(”now array a : n ); for (i=0
50、 ;i11;i+ ) printf(”%5d ”,a i ); printf(n);( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 return 0; 6-5include stdio.h#define n 5int main() int an,i ,temp;printf(”enter array a: n); for (i=0 ;in;i+) scanf(”%d ”, ai ) ; printf(n”) ; for (i=0 ;in;i+ )printf(”%4d ”,ai ); for (i=0 ;i n/2;i+ ) /循環(huán)的作用是將對稱的元素的值互換 temp=ai
51、; ai=ani 1 ; an-i1=temp; printf(”nnow,array a:n); for (i=0 ;in;i+ ) printf(”4d”, ai); printf(”n ) ; return 0; 6-6#include stdio.h#define n 10int main() int i,j ,an n; for (i=0;in;i+ ) ai i=1; ai 0 =1; for (i=2;in;i+ ) for (j=1 ;j=i-1 ;j+) aij=ai-1 j 1+ai 1j; for (i=0;iint main() int a1515 ,i ,j ,k,p
52、,n;( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 p=1; while(p=1) printf(enter n(n=1-15): ) ; scanf(”%d ,&n); if ( (n!=0 ) (n=15) & (n2!=0)) p=0; for (i=1;i =n;i+ ) for (j=1 ;jn ) j=1 ; if (ai j=0) ai j=k; elsei=i+2; j=j1; ai j=k ; for (i=1 ;i=n;i+)for (j=1;j=n;j+) printf(”5d”,ai j) ;n”); return 0;6-8incl
53、ude stdio.hdefine n 4define m 5 /* 數(shù)組為 4 行 5 列 */int main() int i,j,k,a nm ,max,maxj,flag;printf(”please input matrix:n ); for (i=0;in;i+) /* 輸入數(shù)組/ for (j=0;jm;j+)( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 scanf(%d ”, &ai j); for (i=0;in;i+)max=ai 0 ; / 開始時假設(shè) ai 0 最大 / maxj=0; /* 將列號 0 賦給 maxj 保存 / for (j
54、=0;ja kmaxj) / 將最大數(shù)和其同列元素相比/flag=0 ; /* 如果 max不是同列最小,表示不是鞍點令flag1為 0 / continue; if(flag) /* 如果 flag1為 1 表示是鞍點 */printf(a%d%d=dn ,i,maxj ,max ) ; /* 輸出鞍點的值和所在行列號 */ break; if(!flag) /* 如果 flag為 0 表示鞍點不存在 */ printf(”it is not exist!n”); return 0; 6-9#include define n 15int main() int i,number,top,bot
55、t ,mid,loca ,an,flag=1,sign ; char c;printf(”enter data: n); scanf(d,&a0 ) ; i=1 ; while(i=a i 1) i+; else printf(enter this data again:n);printf(”n ); for (i=0;in;i+)printf(”5d”, ai ); printf(n”); while(flag)printf(input number to look for: ”) ; scanf(d”, &number ); sign=0; top=0; /top是查找區(qū)間
56、的起始位置( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強 bott=n1; /bott是查找區(qū)間的最末位置 if (numberan-1 ) ) /要查的數(shù)不在查找區(qū)間內(nèi) loca=1; / 表示找不到 while (!sign) & (top =bott ) )mid=(bott+top )/2 ; if (number=amid )loca=mid ; printf(has found %d,n”,number,loca+1 ) ; sign=1; else if (numberamid) bott=mid1; else top=mid+1; if(!signlo
57、ca=-1 ) printf(”cannot find n”,number) ; ; printf(”continu or not(y/n)? ); scanf( c”,&c) ; if (c=n|c=n) flag=0; return 0;6-10#include stdio 。hint main() int i,j ,upp,low,dig ,spa,oth; char text3 80; upp=low=dig=spa=oth=0; for (i=0 ;i 3;i+) printf(please input line %d: n”,i+1 ) ; gets(text i ); f
58、or (j=0;j=a & texti j =z) upp+; else if (texti j =a & textij =z ) low+; else if (textij= 0 textij int main() char a5=* ,* , , * , ; int i,j,k;char space= ; for (i=0;i5;i+) printf(”n);printf(” ); for (j=1 ;j=i ;j+ ) printf(%c”,space ) ; for (k=0;k5;k+)printf(” c ,ak ); printf(n); return 0;612
59、ac#include int main() int j,n; char ch80,tran 80; printf(input cipher code:”); gets (ch); printf(” ncipher code :%s”,ch ) ; j=0 ; while (chj !=0 ) if ( (chj=a ) (chj =z ) tranj =155chj; else if ( (chj =a) (chj=z ) tranj=219chj ; else tranj=ch j ; j+; n=j;noriginal text:”) ; for (j=0 ;j n;j+) putchar
60、(tran j ); printf(”n ) ; return 0;6-12b( 完整版 ) c語言程序設(shè)計課后習(xí)題答案( 第四版 ) 譚浩強#include stdio.hint main() int j,n; char ch80; printf(input cipher code:n) ; gets (ch); printf(ncipher code:n”,ch) ; j=0; while (chj!= 0) if ( (chj=a ) & (chj=a) & (chj= z) chj=219-chj; else chj=ch j; j+; n=j;printf(original text:”); for (j=0;j n;j+ ) putchar(chj ); printf(n); return 0;613include int main() int i,resu ; char s1100 ,s2100 ; printf(”input string1:”); gets
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度市政道路施工人工費結(jié)算合同
- 2025年度建筑工程施工安全生產(chǎn)監(jiān)督返費合同
- 2025年度文化創(chuàng)意產(chǎn)品開發(fā)借款借據(jù)合同范本
- 欽州2025年廣西欽州市事業(yè)單位招聘893人筆試歷年參考題庫附帶答案詳解
- 莆田2025年福建莆田市涵江區(qū)區(qū)直事業(yè)單位招聘研究生5人筆試歷年參考題庫附帶答案詳解
- 安全生產(chǎn)三項制度
- 漯河2024年河南漯河市城市管理局所屬事業(yè)單位人才引進(jìn)13人筆試歷年參考題庫附帶答案詳解
- 昆明云南昆明市晉寧區(qū)六街鎮(zhèn)中心幼兒園招聘編外工作人員筆試歷年參考題庫附帶答案詳解
- 2025年中國雙眼脈沖爐市場調(diào)查研究報告
- 2025年中國三字扣市場調(diào)查研究報告
- 《社會主義市場經(jīng)濟(jì)理論(第三版)》第一章社會主義市場經(jīng)濟(jì)基礎(chǔ)論
- 銀行授信盡職調(diào)查課件
- 河北省縣市鄉(xiāng)鎮(zhèn)衛(wèi)生院社區(qū)衛(wèi)生服務(wù)中心基本公共衛(wèi)生服務(wù)醫(yī)療機(jī)構(gòu)名單目錄地址2415家
- 視頻號精細(xì)化運營培訓(xùn)課件
- 土木工程專業(yè)畢業(yè)論文任務(wù)書 土木工程專業(yè)電大畢業(yè)論文
- (完整版)漢密爾頓焦慮量表(HAMA)
- 電力電子技術(shù)全套課件
- 編外人員錄用審批表
- 倪海廈《天紀(jì)》講義
- 建設(shè)年飼養(yǎng)240萬只蛋雛雞培育基地項目可行性研究報告
- 黃金太陽漆黑的黎明金手指
評論
0/150
提交評論