freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

最新譚浩強c程序設(shè)計第三版課后答案整本書-資料下載頁

2025-06-26 15:22本頁面
  

【正文】 輸出這10個數(shù)*/ printf(“\n”)。 for (i=1。i=9。i++) /*以下8行是對10個數(shù)排序*/{min=i。 for (j=i+1。j=10。j++) if (a[min]a[j]) min=j。 a[0]=a[i]。 /*以下3行將a[i+1]~a[10]中最小者與a[i]對換*/ a[i]=a[min]。 a[min]=a[0]。} printf(“\n The sorted numbers:\n”)。 for (i=1。i=10。i++) /*輸出已牌好序的10個數(shù)*/ printf(“%5d”,a[i])。}運行結(jié)果:Enter data:a[1]=6↙a[2]=90↙a[3]=45↙a[4]=56↙a[5]=1↙a[6]=15↙a[7]=44↙a[8]=78↙a[9]=58↙a[10]=101↙ 6 90 45 56 1 15 44 78 58 101The sorted number: 1 6 15 44 45 56 58 78 90 101說明:定義a數(shù)組有11個元素:a[0]~a[10],但實際上只對a[1]~a[10]這10個元素輸入值并排序,這樣符合人們的習(xí)慣。a[0]用作兩數(shù)交換時的中間變量。3矩陣對角線元素之和。解:main ( ){ int a[3][3],sum=0。 int i,j。 printf(“Enter data:\n”)。 for (i=0。i3。i++)for (j=0。j3。j++) scanf(“%d”,amp。a[i][j])。for (i=0。i3。i++)sum=sum+a[i][i]。printf(“sum = %5d\n”,sum)。}運行情況如下:Enter data:1 2 3 4 5 6 7 8 9↙sum = 15此程序中用的是整型數(shù)組,運行結(jié)果是正確的。如果用的是實型數(shù)組,程序應(yīng)修改為:main ( ){float a[3][3],sum=0。 int i,j。 printf(“Enter data:\n”)。 for (i=0。i3。i++) for (j=0。j3。j++)scanf (“ %f”,amp。a[i][j])。 /*注意:在%f前有一空格,否則無法輸入數(shù)據(jù)*/ for (i=0。i3。i++)sum=sum+a[i][i]。 printf(“sum = %\n”,sum)。}該程序在Turbo C ,得到結(jié)果:sum=但在Turbo C ,出現(xiàn)運行錯誤,在輸入數(shù)據(jù)后系統(tǒng)顯示出錯信息:scanf:floating point fomats not linkedAbnormal program termination經(jīng)過檢查,程序的邏輯和語法都是正確的,而且在其它的C系統(tǒng)中(例如Borland C++)可以正常運行。出現(xiàn)這種情況是所用的C編譯系統(tǒng)不完善,處理的方法有兩個:一是把程序移到其它C系統(tǒng)上運行(但往往不方便);二是遷就所用的C系統(tǒng),修改程序,避開其缺陷,這就需要通過多次試驗掌握其規(guī)律。對以上程序來說,可以有多種替代的方案,例如可以把程序中第5~7行改為:for (i=0。i3。j++) scanf (“ %f %f %f”,amp。a[i][0],amp。[i][1],amp。a[i][2])。它在效果上應(yīng)與原來的第5~7行等價,但上機運行時發(fā)現(xiàn)仍不能正常運行,再改為:for (j=0。j3。j++) scanf (“ %f %f %f”,amp。a[0][j],amp。[1][j],amp。a[2][j])。它也是與原來的5~7行等價的,上機運行時發(fā)現(xiàn)可以正常運行。程序如下:main ( ){float a[3][3],sum=0。 int i,j。 printf(“Enter data:\n”) for (j=0。j3。j++)scanf(“ %f %f %f”,amp。a[0][j],amp。a[1][j],amp。a[2][j])。 for (i=0。i3。i++)sum=sum+a[i][i]。 printf(“ sum = %\n”,sum)。}運行情況如下:Enter data: ↙應(yīng)注意數(shù)據(jù)與元素的對應(yīng)關(guān)系:[0][0]的值,[1][0]的值,[2][0]的值……,今輸入一個數(shù),要求按原來排序的規(guī)律將它插入數(shù)組中。解:程序如下:main ( ){ int a[11]={1,4,6,9,13,16,19,28,40,100}。 /*注意數(shù)組a長度應(yīng)足夠大,以便容納新插入的元素*/ int temp1,temp2,number,end,i,j。 printf(“array a:\n”)。 for (i=0。i10。i++) printf(“%5d”,a[i])。 printf(“\n”)。 printf(“Insert data:”)。 scanf(“%d”,amp。number)。 end=a[9]。 if (numberend) a[10]=number。 else {for (i=0。i10。i++) {if (a[i]number) /*找到合適的插入位置為i*/ {temp1=a[i]。 a[i]=number。 for (j=i+1。j11。j++) /*將原來的第i個元素移至第i+1位置,其它順序后移*/ {temp2=a[j]。 a[j]=temp1。 temp1=temp2。 } break。 } }} printf(“Now,array a:\n”)。 for (i=0。i11。i++)printf(“%6d”,a[i])。} 運行情況如下:array a:1 4 6 9 13 16 19 28 40 100Insert data:5↙Now,array a:1 4 5 6 9 13 16 19 28 40 100加以改進后,可以采用以下方法。void main(){ int a[11]={1,4,6,9,13,16,19,28,40,100}。 int temp1,temp2,number,end,i,j。 printf(array a:\n)。 for (i=0。i10。i++) printf(%5d,a[i])。 printf(\n)。 printf(Insert data:)。 scanf(%d,amp。number)。 for(i=9。i=0 amp。amp。 a[i]number。 i) /*從數(shù)組中最后一個數(shù)開始比較,凡大于number的數(shù)向后移動*/ a[i+1]=a[i]。 a[i+1]=number。 /*將number插入到合適位置*/ for (i=0。i11。i++) printf(%5d,a[i])。 printf(\n)。}。例如原來順序為:8,6,5,4,1。要求改為:1,4,5,6,8。解:程序如下:define N 5main ( ) { int a[N], i, temp。 printf(“Enter array a:\n”)。for (i=0。iN。i++) scanf(“%d”,amp。a[i])。 printf(“array a:\n”)。 for (i=0。iN。i++)printf(“%4d”,a[i])。 for (i=0。iN/2。i++) { temp=a[i]。a[i]=a[Ni1]。a[Ni1]=temp。 } printf(“\n Now,array a:\n”)。 for (i=0。iN。i++)printf(“%4d”,a[i])。 printf(“\n”)。}運行情況如下:Enter array a:8 6 5 4 1↙array a:8 6 5 4 1Now,array a:1 4 5 6 8程序中第二個for循環(huán)也可以寫成:for (i=0, j=N1。 ij。 i++, j) { temp=a[i]。a[i]=a[j]。a[j]=temp。 }(要求打印出10行)。11 11 2 11 3 3 11 4 6 4 1┇ ┇ ┇ ┇解:楊輝三角形是(a+b)n展開后各項的系數(shù)。例如:(a+b)0展開后為1 系數(shù)為1(a+b)1展開后為a+b 系數(shù)為1,1(a+b)2展開后為a2+2ab+b2 系數(shù)為1,2,1(a+b)3展開后為a3+3a2b+3ab2+b3 系數(shù)為1,3,3,1(a+b)4展開后為a4+4a3b+6a2b2+4ab3+b4 系數(shù)為1,4,6,4,1以上就是楊輝三角形的前5行。楊輝三角形各行的系數(shù)有以下規(guī)律:(1) 各行第一個數(shù)都是1。(2) 各行最后一個數(shù)都是1。(3) 從第3行起,除上面指出的第一個數(shù)和最后一個數(shù)外,其余各數(shù)是上一行同列和前一列2個數(shù)之和。例如第4行第2個數(shù)(3)是第3行第2個數(shù)(2)和第3行第1個數(shù)(1)之和??梢赃@樣表示:a[i][j]=a[i1][j]+a[i1][j1],其中i為行數(shù),j為列數(shù)。define N 11main ( ){ int i,j,a[N][N]。 for (i=1。iN。i++) {a[i][i]=1。a[i][1]=1。} for (i=3。iN。i++) for (j=2。j=i1。j++)a[i][j]=a[i1][j1]+a[i1][j]。 for (i=1。iN。i++){ for (j=1。j=i。j++) printf(“%6d”,a[i][j])。 printf(“\n”)。} printf(“\n”)。}運行結(jié)果:11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 11 7 21 35 35 21 7 11 8 28 56 70 56 28 8 11 9 36 84 126 126 84 36 9 1。所謂魔方陣是指這樣的方陣(方陣的階數(shù)應(yīng)為奇數(shù)),它的每一行、每一列和對角線之和均相等。例如,三階魔方陣為要求輸出由1~n2之間的自然數(shù)構(gòu)成的魔方陣。解:魔方陣中各數(shù)的排列規(guī)律如下:1) 將1放在第一行中間一列。2) 從2開始直到nn止各數(shù)依次按下列規(guī)則存放:每一個數(shù)存放的行比前一個數(shù)的行數(shù)減1,列數(shù)加1(例如上面的三階魔方陣,5在4的上一行后一列)。3) 如果上一個數(shù)的行數(shù)為1,則下一個數(shù)的行數(shù)為n(指最下一行),列數(shù)同樣加1。例如,1在第1行第2列,則2應(yīng)放在最下一行第3列。4) 當(dāng)上一個數(shù)的列數(shù)為n時,下一個數(shù)的列數(shù)應(yīng)為1,行數(shù)同樣減1。例如2在第3行最后一列,則3應(yīng)放在第2行第1列。5) 如果按上面規(guī)則確定的位置上已經(jīng)有數(shù),或上一個數(shù)是第1行第n列時,則把下一個數(shù)放在上一個數(shù)的下面。例如,按上面的規(guī)定,4應(yīng)該放在第1行第2列,但該位置已經(jīng)被1占據(jù),所以4就放在3的下面。由于6是第1行第3列(即最后一列),故7放在6的下面。按此方法可以得到任何的魔方陣。void main(){ int a[16][16],i,j,k,p,n。 p=1。 while(p==1) { printf(Enter n(n=1 to 15):)。 scanf(%d,amp。n)。 if(n!=0 amp。amp。 n=15 amp。amp。 n%2!=0) /*要求階數(shù)為1至15之間的奇數(shù)*/ p=0。 } /*初始化,第0行和第0列不用,與魔方陣構(gòu)造規(guī)則一致*/ for(i=1。i=n。i++) for(j=1。j=n。j++) a[i][j]=0。 j=n/2+1。 a[1][j]=1。 for(k=2。k=n*n。k++) { i。 j++。 if(i1 amp。amp。 jn)
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1