c程序設(shè)計(jì)與訓(xùn)練教材練習(xí)答案181010_W_第1頁(yè)
c程序設(shè)計(jì)與訓(xùn)練教材練習(xí)答案181010_W_第2頁(yè)
c程序設(shè)計(jì)與訓(xùn)練教材練習(xí)答案181010_W_第3頁(yè)
c程序設(shè)計(jì)與訓(xùn)練教材練習(xí)答案181010_W_第4頁(yè)
c程序設(shè)計(jì)與訓(xùn)練教材練習(xí)答案181010_W_第5頁(yè)
已閱讀5頁(yè),還剩50頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、不編入教材中 第 1 章 C 程序設(shè)計(jì)概述略 第 2 章一、單項(xiàng)選擇題 1. D2. B3. D4. C, D, C5. C6. C, B7. D8. B9. D,A10. B 11.B 12.A 13.A二、填空題 1. x7f2. 1, 23. 14. double5. (1)2, (2) 1, (3) 306. 3.57. 八進(jìn)制、十進(jìn)制、十六進(jìn)制 8. 11,129. a*100+b*10+c三、簡(jiǎn)答題略 四、判斷下列表達(dá)式的 1. meles_int+=765+43合法 2. xy+=3不合法, 賦值語(yǔ)句的左邊應(yīng)該是變量,不能是表達(dá)式。 3. a+5=b+7不合法 五、已知“int

2、a=5, b=25, x=5;”,寫(xiě)出下列各表達(dá)式的值1a+b%5*(a+b)%2/552(float)(a+3)/2+a%b9.03x+=a104x*=5+3405x%=(x%=3)06x/=x+x07x-=x+=x*=x0六、19,11,9,1023 3 3a=374a=fc 4y=5.00000050, 486. a, A, 32第 3 章一、單項(xiàng)選擇題 1. A2. D3. B4. C5. A6. B7. D8. C9. C10. A二、填空題 1. x=1y=1z=-12. (1) 1e(2)200(3) 10(4) 303. (1) 01234(2)1234(3)01234 (4)

3、%05d4. (1) a=%d, b=%d, x+y=%4.1fa,b,x+y (2) x-y=%4.1f a-b=%dx-y,a-b(3) c1=%c or %d (ASCII),c2=%c or %d (ASCII)c1,c1,c2,c2 5 1234 1234.0 % 67.0三、寫(xiě)出下列程序的運(yùn)行結(jié)果 1. c,c,c99,99,992. x=7,y=3 z=183. T4. -2345,-12.305.出。 6. 01, 80, 21, 217. 功能:從鍵盤(pán)輸入一個(gè)字符并輸出,若輸入的字符是大寫(xiě)字母,則轉(zhuǎn)換為小寫(xiě)字母輸8. 3249. x=310. i=2.000000,j=3四、

4、編程題 1. 編寫(xiě)一個(gè)簡(jiǎn)單程序,提示用戶(hù)輸入一個(gè)房間的長(zhǎng)和寬,然后計(jì)算并輸出房間面積, 單位是平方米,精度為小數(shù)點(diǎn)后兩位。#include int main()float length,wide;printf(輸入一個(gè)房間的長(zhǎng)和寬n); scanf(%f%f,&length,&wide); printf(%.2f,length*wide);return 0;2. 編寫(xiě)一個(gè)程序,輸入兩個(gè)整數(shù),分別計(jì)算這兩個(gè)整數(shù)的和、差、積、商及平方和的平方根并正確輸出。#include #include int main()int a,b; scanf(%d%d,&a,&b);printf(%d %d %d %

5、f,a+b,a-b,a/b,sqrt(a*a+b*b); return 0;3. 請(qǐng)編寫(xiě)一個(gè)程序,要求用戶(hù)輸入圓柱底面半徑 r 和圓柱高 h,求圓柱表面積和體積。#include #define PI 3.14 int main()float r,h; scanf(%f%f,&r,&h);printf(%f %f,2*PI*r*h+2*PI*r*r,PI*r*r*h); return 0;4. 編寫(xiě)一個(gè)程序,先將值 x 和 76.1 分別存儲(chǔ)到不同的變量中,然后輸出這兩個(gè)值。#include #include int main()char a=x; double b=76.1;printf(%

6、c %.1f,a,b); return 0;5. 編寫(xiě)一個(gè)程序,將值 x、o、1.345E10 和 35 分別存入變量中,其中使用 scanf( )函數(shù)輸入前三個(gè)值,第 4 個(gè)值使用賦值語(yǔ)句賦值。#include int main()char x,y; float z; int a;scanf(%c%c%f,&x,&y,&z); a=35;printf(%c %c %E %d n,x,y,z,a); return 0;6. 請(qǐng)編寫(xiě)一個(gè)程序,先獲取一個(gè)整型輸入,然后使之加倍,再減去 10,最后顯示出結(jié)果。#include int main()int a; scanf(%d,&a);printf(

7、%d,2*a-10); return 0;7. 編寫(xiě)一個(gè)程序?qū)囟鹊膯挝粡娜A氏換為攝氏度。華氏和攝氏的轉(zhuǎn)換公式為:celsius =5 (fahrenheit 9 - 32) #include int main()float fahrenheit; scanf(%f,&fahrenheit); printf(%f,5.0/9*(fahrenheit-32); return 0;第 4 章一、單項(xiàng)選擇題 1.C2. D3. B, C4. A, D5. C6. D7. D8. C9. A10. A11. B二、填空題 1. (1) m=1 n=2(2) m=2 n=3(3) a0 2. 0113.

8、 y%4=0 & y%100 | y%400=04. 75. 026. 2x & x3 | x=a & ch=A & chy)?m=y:m=x三、寫(xiě)出下列程序的運(yùn)行結(jié)果 1. a=2, b=12. 0.5000003. 24. d=205. %#6. a=1007. i=6i=2 i=-2題目改為:#include int main() int x=0,y=2,z=3; switch(x) case 0: switch(y=2) case 1:printf(*1);break; case 2:printf(%);break; case 1:switch(z) case 1:printf($);

9、 case 2:printf(*2);break; default:printf(#); return 0; 答案:*1# 8. k=6,ch=C題目改為:#include main() char c1=B,c2=h; switch(c1) case A:c2+; case B:switch(c2) case a:printf(%); default:printf(!); case 99:printf(%d,-c2); case C:switch(c2) case g:printf(*n); case h:printf(?n);break; default:printf(&n); 答案:!10

10、3* ? 四、編程題 1. 編寫(xiě)一個(gè)交互式程序,其中包括的 if 語(yǔ)句用于計(jì)算正方形的面積(area = side2)或直角三角形的面積(area = 1/2baseheight),要求提示用戶(hù)輸入第一個(gè)字符用于判斷是計(jì)算正方形面積還是計(jì)算三角形面積,并隨后輸入正方形的邊長(zhǎng)或三角形的兩直角邊長(zhǎng)。 #include int main()printf(計(jì)算正方形的面積按 0,直角三角形的面積按 1n); int a;scanf(%d,&a); if(a) float base,height; scanf(%f%f,&base,&height); printf(%f,1.0/2*base*heigh

11、t);else float side; scanf(%f,&side); printf(%f,side*side);return 0;2. 使用嵌套的 if 語(yǔ)句實(shí)現(xiàn)表 4-4 的決策表。假設(shè)風(fēng)速為整數(shù)。 表 4-4 決策表 風(fēng)速(MPH)類(lèi)別 低于 25弱風(fēng) 2538強(qiáng)風(fēng) 3954大風(fēng) 5572狂風(fēng) 72 以上颶風(fēng) #include int main()printf(請(qǐng)輸入風(fēng)速n); int a;scanf(%d,&a);if(a25) printf(弱風(fēng)n);else if(a=38) printf(強(qiáng)風(fēng)n); else if(a=54) printf(大風(fēng)n); else if(a=72

12、) printf(狂風(fēng)n); else printf(颶風(fēng)n);return 0;3. 使用 switch 語(yǔ)句編寫(xiě)程序,將標(biāo)準(zhǔn)燈泡的期望亮度賦值給變量 lumens,燈泡的功率存儲(chǔ)在變量 watts 中(單位是瓦特)。如表 4-5 所示。 表 4-5 燈泡信息表 功率 期望亮度(流明) 功率 亮度(流明) 151256088025215751000405001001675如果功率值不在表內(nèi),就為變量 lumens 賦值為-1。 #include int main()int lumens,watts; while(scanf(%d,&watts)switch(watts)case 15: lu

13、mens=125;break;case 25: lumens=215;break;case 40: lumens=500;break;case 60: lumens=880;break;case 75: lumens=1000;break; case 100:lumens=1675;break; default: lumens=-1;printf(%dn,lumens);return 0;4. 編寫(xiě)程序,輸入三角形三邊 a、b、c,判斷 a、b、c 能否構(gòu)成三角形,若不能則輸出相應(yīng)的信息,若能則判斷組成的是等腰、等邊、直角三角形還是一般三角形。 提示利用三角形兩邊之和大于第三邊判斷是否能夠構(gòu)成

14、三角形,能夠成三角形時(shí)再以等腰、等邊、直角三角形的條件進(jìn)行判斷。 #include int main()float a,b,c; scanf(%f%f%f,&a,&b,&c);if(a=b&b=c) printf(等邊三角形n);else if(a=b|b=c|a=c&a+bc) printf(等腰三角形n);else if(a*a+b*b)=c*c|(a*a+c*c)=b*b|(b*b+c*c)=a*a) printf(直角三角形n); else if(a+bc&a+cb&b+ca) printf(一般三角形n);else printf(不能構(gòu)成三角形n); return 0;5. 有一函數(shù)

15、: xy = x -1x +1(-5 x 0) (x = 0)(0 x 10)分別用 if 語(yǔ)句和 switch 語(yǔ)句編寫(xiě)程序,要求輸入x 的值,輸出 y 的值。 if#include int main()printf(請(qǐng)輸入 X 的值n); float x;scanf(%f,&x);if(x-5&x0&x10) printf(%fn,x+1); else printf(所輸?shù)闹挡辉诳紤]范圍內(nèi)); return 0;switch #include int main()printf(請(qǐng)輸入 X 的值n); float x;scanf(%f,&x); int flag=3;if(-5x&x0&x0

16、xamin8. x%i=0 或 !(x%i)9. 預(yù)處理 整型 轉(zhuǎn)義 00213三、寫(xiě)出下列程序的運(yùn)行結(jié)果1. 2 5 8 11 14 2. * * * * * * 3. 41 4.4284 5. 8 6. 32 7. k=30 K=0 8. 2 0 9. a=16, y=60 10. k=6,ch=C 四、編程題 1. 使用循環(huán)語(yǔ)句編寫(xiě)一段程序生成下面的輸出: 0 1 1 2 2 4 3 8 4 16 5 32 6 64 #include #include int main()int i; for(i=0;i=6;i+)printf(%d ,i); int f=pow(2,i); print

17、f(%dn,f);return 0;2. 編寫(xiě)一個(gè)程序,其功能為:求 1-100 之間的奇數(shù)之和。#include int main() int sum=0,i; for(i=1;i=100;i+=2) sum+=i; printf(%dn,sum); return 0; 3. 某個(gè)小鎮(zhèn)有 9870 名居民,其人口每年遞增 10%。請(qǐng)編寫(xiě)一個(gè)循環(huán)來(lái)顯示每年的人口數(shù),并確定要經(jīng)過(guò)多少年人口數(shù)才會(huì)超過(guò) 30000。 #include int main() int s=9870,i; for(i=1;i+) s*=1.1; if(s30000) printf(%dn,i);return 0; 4.

18、編寫(xiě)程序,求 1+2!+3!+.+20!的和,并輸出計(jì)算結(jié)果。#include int main() int sum=0,s=1,i; for(i=1;i=20;i+) s*=i; sum+=s; printf(%dn,sum); return 0; 5. 編寫(xiě)程序,其功能為:輸出 fibnocci 數(shù)列的前 20 項(xiàng),每行輸出 5 個(gè)。說(shuō)明:fibnocci 數(shù)列的前兩項(xiàng)值都為,以后各項(xiàng)等于其前兩項(xiàng)之和。 #include int main() int f1=1,f2=1,flag=0,i; for(i=1;i=10;i+) printf(%d ,f1); flag+; if(flag%5=

19、0) printf(n); printf(%d ,f2); flag+; if(flag%5=0) printf(n); f1=f1+f2; f2=f1+f2; return 0; 6. 編寫(xiě)程序,輸出 99 乘法口訣表。 #include int main()int i,j; for(i=1;i=9;i+) for(j=1;j=i;j+) printf(%d*%d=%2d ,j,i,i*j);printf(n);return 0;7. 編寫(xiě)程序,輸出如下圖形。 A B CCC DDDD EEEEE #include int main() int i,j; for(i=0; i5; i+) f

20、or(j=0; j=i; j+) printf(%c,i+65); printf(n); return 0; 8. 編寫(xiě)程序,求當(dāng) abba=1855 時(shí),a、b 的值。其中 a 和 b 取值為 1 至 9 的一位數(shù),而 ab 和 ba 則為這兩個(gè) 1 位數(shù)組成的兩位數(shù)數(shù)字。#include int main() int a,b; for(a=1; a10; a+) for(b=1; b10; b+) if(a*10+b)*(b*10+a)=1855) printf(%d,%dn,a,b); return 0; 9. 在例 5-17 中使用了兩個(gè)并列的雙重 for 循環(huán)完成了菱形圖案的輸出,請(qǐng)

21、用一個(gè) for 外循環(huán), 包含若干個(gè)并列的內(nèi)循環(huán)完成菱形圖案的輸出。#include #include int main() int i ,j ,k; for(i=-3; i=3; i+) /i 控 制 行for(k=1; k=abs(i); k+) /k 控制空格 printf( ); for(j=1; j=7-2*abs(i); j+) /j 控制* printf(* ); printf(n); return 0; 另一種比較簡(jiǎn)單的實(shí)現(xiàn)本題的源程序#include /對(duì)稱(chēng)#include int main() int i,j; for(i=-3;i=3;i+)/行 for(j=-3;j=3

22、;j+)/列 if(abs(i)+abs(j)=3) /如果滿(mǎn)足條件則位于菱形printf(%c,*);/*星號(hào) else printf( );/空格 printf(n); return 0; 10. 已知函數(shù) f (n) = 61+ 1 + 1 + 1 + 1 p 。試編寫(xiě)程序計(jì)算p 的近似值直到 1/n小于 10-6 為止。#include #include main()223242n2 int n;double eps,pie=0; eps=0.000001; n=1;while( 1.0/n eps)pie=pie+1.0/n/n; n+;pie=sqrt(6*pie); printf

23、(%f,pie);第 6 章數(shù)組及字符串一、單項(xiàng)選擇題 1.D,2.D,3.B,4.C,5.C,6.D,7.D,8.A,9.B,10.D,11.A,12. D,13. B,14.D, 15.B,16.B, 17.D, 18.D,19.D,20.C,21.C,22.C,23.C,24.D,25.B,26.A,27.B,28.D,29.B,30.C 二、讀程序,寫(xiě)結(jié)果1. a,2 2. aacegglnu 3. 將輸入的數(shù)字字符串,作為 8 進(jìn)制數(shù),轉(zhuǎn)換為 10 進(jìn)制數(shù)4. 69378254 5. 排序前: 9 61 92 44 26 93 28 37 排序后: 61 92 93 44 26 37

24、 28 9 6. 3,5,7, 7. ”XY”Ab 8. 12, 34 9. Hello 10. 1 1 2 3 5 8 13 21 11.aa 12.AQM 13. you&me 14. 統(tǒng)計(jì)元音字母?jìng)€(gè)數(shù) 如果輸入 This is C program,輸出a:1 i:2 o:1 三、編程題 1. 在一維數(shù)組 int a10中找出最大數(shù)、最小數(shù),分別放在數(shù)組 a0和 a9位置上。提示: 要注意最大數(shù)、最小數(shù)原有的位置。 #include int main() int a10=8,-3,12,6,10,1,15,4,5,9; int i,t,max_index,min_index; max_in

25、dex=min_index=0; for(i=1;iamax_index) max_index=i; if(aiamin_index) min_index=i; t=a0;a0=amax_index;amax_index=t; if(min_index=0) t=amax_index;amax_index=a9;a9=t; else t=amin_index;amin_index=a9;a9=t; for(i=0;i10;i+) printf(%4d,ai); printf(n); return 0; 2. 將一個(gè)升序數(shù)組a 和降序數(shù)組 b 的所有元素按降序存放到 c 數(shù)組中。#include

26、 int main() int a5=0,2,4,6,8,b5=9,7,5,3,1,c10; int p=4; int q=0; int i=0; while(ibq) ci=ap-; else ci=bq+; i+; for(i=0;i10;i+) printf(%d ,ci); return 0; 3. 對(duì)一維數(shù)組 a 中重復(fù)出現(xiàn)的數(shù)據(jù),只保留一個(gè)。并將數(shù)組按升序排序。例如,數(shù)組 a 為: 2,5,2,4,20,0,4,-5,-5,16,2,-4,20。處理后數(shù)組a 為: -5,-4,0,2,4,5,16,20。#include int main()int a=2,5,2,4,20,0,4

27、,-5,-5,16,2,-4,20;int i,j,k,x,n; n=sizeof(a)/sizeof(int); for(i=0;in-1;i+)k=i; for(j=i+1;jn;j+)if(ajak)k=j; if(k!=i)x=ai;ai=ak;ak=x;for(k=0,i=1;in;)if(ak!=ai)a+k=ai;i+;for(i=0;i=k;i+) printf(%4d,ai);printf(n); return 0;另一算法,先不排序,刪除后再排序。 #include #include #define N 13 int main() int a=2,5,2,4,20,0,4,

28、-5,-5,16,2,-4,20;int i,j,k,x,n,p,t; n=sizeof(a)/sizeof(int); for(i=0; in; i+)printf(%4d,ai); printf(n);for(p=0; p=n-2; p+) for(i=p+1,j=p+1; i=n-1; i+)if(ap!=ai)aj+=ai;/ n=j;/新的長(zhǎng)度 printf(刪除重復(fù)元素后:n); for(i=0; in; i+)printf(%4d,ai); printf(n);for(i=0; in-1; i+) p=i;for(j=i+1; jn; j+) if(ajap) p=j;if(p!

29、=i) t=ap; ap=ai; ai=t;printf(排序后:n); for(i=0; in; i+)printf(%4d,ai); return 0;4整型數(shù)組 a 為升序數(shù)組,元素為-9,-6,-3,0,2,3,7,7,11,14,20。參考本章 6.1.3 節(jié)折半查找算法,采用折半查找算法確定待插入元素的位置,在數(shù)組中插入元素 5 和-5。 #include int main()int x,a12=-9,-6,-3,0,2,3,7,7,11,14,20;int left,right,mid,i; left=0;right=10;printf(輸入要插入的數(shù):);scanf(%d,&x

30、); while(left=right)mid=(left+right)/2;if(x=amid)break; if(xamid)right=mid-1;elseleft=mid+1;if(amid=mid;i-) ai+1=ai;ai+1=x; for(i=0;i12;i+)printf(%dt,ai); printf(n);return 0;5. 修改本章例 6-9,使得不管數(shù)組 a 中是否存在值為 x 的元素,程序都能正常工作。 #include #define N 8int main()int aN=-3,12,9,7,38;int i,n,x,pos;printf(輸入要?jiǎng)h除的數(shù):

31、);scanf(%d,&x); n=5;pos=0;while(posn & apos!=x) pos+;if(posn)for(i=pos;in-1;i+) ai=ai+1;elsen-;printf(沒(méi)有值為%d 的元素n,x);for(i=0;in;i+) printf(%3d,ai);printf(n); return 0;6. 整型數(shù)組 a 中元素為-6,11,-3,7,0,14,7,23。編制程序,可以刪除值為 7 的所有元素,也可以正確處理刪除值不存在的元素,例如刪除值為 5 的元素。 int main()int a6=-3,12,9,7,9,9,i,j,n,x;printf(輸

32、入要?jiǎng)h去的元素值 ); scanf(%d,&x);/n=6;for(i=0;in;i+)printf(%4d,ai); printf(n); for(i=0;in;i+)if(ai=x)for(j=i;jn-1;j+) aj=aj+1;n-;i-;for(i=0;in;i+)printf(%4d,ai); printf(n);return 0;程 序 二 : #include int main()int a6=-3,12,9,7,9,9,i,j,x;printf(輸入要?jiǎng)h去的元素值 ); scanf(%d,&x);/ for(i=0,j=0;i6;i+)if(ai!=x)aj+=ai;if(i

33、=j) printf(輸入的數(shù)不存在n); for(i=0;ij;i+)printf(%4d,ai); printf(n);return 0;6數(shù)組 a、b 均為整型數(shù)組,元素有序,編制程序,將 a、b 數(shù)組中都存在的元素存入數(shù)組 c 中。例如: int a=-9,-6,-3,0,2,3,7,11,14,20; int b=-10,-8,-6,-3,0,5,7,11,14,19,則經(jīng)程序 處理后 c 中的元素有-6,-3,0,7,11,14。#include/本題可以理為求集合 a 與集合 b 的交集 c int main()int a=-9,-6,-3,0,2,3,7,11,14,20;in

34、t b=-10,-8,-6,-3,0,5,7,11,14,19;/確保數(shù)組a 和b 自身的各元素互不相同 int c100; int t=0; int i,j;for( i=0;isizeof(a)/sizeof(int);i+) for( j=0;jsizeof(b)/sizeof(int);j+) if(ai=bj) ct+=ai;for(i=0;it;i+)printf(%d ,ci); return 0;7數(shù)組A 為12,0,-5,4,6,-8,數(shù)組 B 為13,-5,9,-8,4。因?yàn)閿?shù)組 A、B 內(nèi)各元素互不相同, 因此可以將數(shù)組 A、B 視為集合。編制 3 個(gè)程序,求出下面 3

35、個(gè)圖中陰影部分的元素,存入數(shù)組C。 ABA-BAB-AB #include #define U 6 #define V 5 int cho1(int u,int v,int w) int i,j,w_l; for(i=0;iU;i+) wi=ui; w_l=U; for(j=0;jV;j+) for(i=0;i=w_l) ww_l+=vj; return w_l; int main() int uU=12,0,-5,4,6,-8; int vV=13,-5,9,-8,4, wU+V; int n,i; n=cho1(u,v,w); printf(%dn,n); for(i=0;in;i+) p

36、rintf(%4d,wi); printf(n); return 0; #include #define U 6 #define V 6 #define W 6 int cho2(int u,int v,int w) int i,j,k; int u_l=6,v_l=5,w_l; for(i=0;iu_l;i+) wi=ui; w_l=u_l; for(j=0;jv_l;j+) for(i=0;iw_l;i+) if(vj=wi) break; if(iw_l) for(k=i;kw_l-1;k+) wk=wk+1; -w_l; return w_l; int main() int uU=12

37、,0,-5,4,6,-8; int vV=13,-5,9,-8,4, wU; int n,i; n=cho2(u,v,w);/ printf(%dn,n); for(i=0;in;i+) printf(%4d,wi); printf(n); return 0; #include #define U 6 #define V 6 #define W 6 int cho3(int u,int v,int w) int i,j,k; int u_l=6,v_l=5,w_l; for(i=0;iu_l;i+) wi=ui; w_l=u_l; for(j=0;jv_l;j+) for(i=0;iw_l;i

38、+) if(vj=wi) break; if(iw_l) for(k=i;kw_l-1;k+) wk=wk+1; -w_l; else ww_l=vj; +w_l; return w_l; int main() int uU=12,0,-5,4,6,-8; int vV=13,-5,9,-8,4, wU+V; int n,i; n=cho3(u,v,w);/ printf(%dn,n); for(i=0;in;i+) printf(%4d,wi); printf(n); return 0; 8. 使用優(yōu)化的冒泡排序方法,對(duì)一維數(shù)組的元素進(jìn)行降序排序。#include int main()int

39、 a7=38,65,-97,0,13,27,-23;int i,j,len,temp; int flag;len=sizeof(a)/sizeof(int); for(i=len-1;i0;i-)flag=0; for(j=0;ji;j+)if(ajaj+1)temp=aj; aj=aj+1; aj+1=temp; flag=1;if(flag=0)break;for(i=0;ilen;i+) printf(%dt,ai);printf(n); return 0;9. 編寫(xiě)程序,將 a55二維數(shù)組中右上角元素減去 3,左下角元素加上 3,對(duì)角線上元素乘以-1。 #include #define

40、 N 5 int main() float aNN; int i,j,k; for(i=0;iN;i+) for(j=0;jN;j+) scanf(%f,&aij); for(i=0;iN;i+) for(j=0;jN;j+) if(i=j) aij*=-1; else if(ij) aij-=3; else aij+=3; for(k=0;kN;k+) printf(%5.2f ,aik); printf(n); return 0; 10. 將一維數(shù)組 a16中的元素按行順序放入二維數(shù)組b44中。#include int main() int a16=1,2,3,4,5,6,7,8,9,10

41、,11,12,13,14,15,16,b44; int i,j; for(i=0;i16;i+) bi/4i%4=ai;/ for(i=0;i4;i+) for(j=0;j4;j+) printf(%4d,bij); printf(n); return 0; 11. 將 3*4 的二維數(shù)組中的元素按行優(yōu)先存放到一個(gè)一維數(shù)組中,升序排序后再按列優(yōu)先將元素存放到 4*3 的二維數(shù)組中。#include int main()float a34,b12,c43,min; int k,i,j;for(i=0;i3;i+)for(j=0;j4;j+) sca nf(%f,&aij); bi*4+j=aij

42、;for(i=0;i11;i+)min=bi; k=i;for(j=i+1;jbj) min=bj;k=j; bk=bi;bi=min;for(i=0;i4;i+)for(j=0;j3;j+)cij=bi+j*4;/ printf(%4.2f ,cij);printf(n);return 0;12. 將二維數(shù)組 n34中每行最小的元素移到副對(duì)角線上,最小元素和該行其他元素的相對(duì)位置不能改變。 #include int main() int n34=1,2,3,4,5,6,7,8,9,10,11,12,min3,p=3; int i,j,k;/ for(i=0;i3;i+) mini=ni0;

43、for(j=0;j4;j+) if(nijmini) mini=nij; while(nip!=mini) int t=ni0; for(k=1;k4;k+) nik-1=nik; ni3=t; p-; for(i=0;i3;i+) for(j=0;j4;j+) printf(%2d ,nij); printf(n); 程 序 二 : #include int main() int i,j,k,n34=1,2,3,4,5,6,7,8,9,10,11,12,min3,p=3; for(i=0;i3;i+) mini=ni0; for(j=0;j4;j+) if(nijmini) mini=nij; while(nip!=mini) int t=ni0; for(k=1;k4;k+) nik-1=nik; ni3=t; p-; for(i=0;i3;i+) for(j=0;j4;j+) printf(%2d ,nij); printf(n); 13. 對(duì)二維數(shù)組 int a44中每行、每列、主副、對(duì)角線元素求和后存入一維數(shù)組 b10,再對(duì)b數(shù)組進(jìn)行降序排序。#include int main() int a44=25,3,8,24,-3,12,6,10,6,23,0,-8,4,9,30,19; int b

溫馨提示

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

評(píng)論

0/150

提交評(píng)論