《C語言學習與應用》課后習題及答案08_第1頁
《C語言學習與應用》課后習題及答案08_第2頁
《C語言學習與應用》課后習題及答案08_第3頁
《C語言學習與應用》課后習題及答案08_第4頁
《C語言學習與應用》課后習題及答案08_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

學習任務八參考答案

問題8-1:輸出3行3列的方陣,將代碼補充完整。

#incIude"stdio.h"

#defineM3

voidmain()

(

inti,j,a[3][3]={4,9,2,3,5,7,8,1.6);

for(i=0;i<3;i++)

{for(j=0;j<3;j++)

printf("%d",a[i][j]);

printf(H\n");

)

getchar();

)

問題8-2:將N行N列的方陣左下三角元素置0,請將代碼補充

完整。

#incIude"stdio.h"

#incIude"stdIib.h"

#defineN5

voidfun(intw[][N])〃為數組左下三角元素置0

{inti,j;

for(i=0;i<N;i++)

for(j=0;j<=i;j++)

w[i][j]=0;

}

voidout(intw[][N])〃輸出數組

{inti,j;

for(i=0;i<N;i++)

{for(j=0;j<N;j++)

printf("%4d",w[i][j]);

printf(H\n");

)

}

voidmain()

(

inta[N][N],i,j;

for(i=0;i<N;i++)〃為二維數組元素賦值

for(j=0;j<N;j++)

a[i][j]=rand()%50;

out(a);〃輸出數組元素

fun(a);〃為左下三角數組元素置0

printf(“數組左下三角元素置0\nH);

out(a);〃再次輸出數組元素

getchar();

)

問題8-3:將二維數組每列元素的平均值,放在b數組中。

#incIude"stdio.h"

#defineM3

#defineN4

voidfun(inta[][N],fIoatb[N])

{

inti,j;

doubIeave;

for(i=0;i<N;i++)

{ave=0;

for(j=0;j<M;j++)

ave=ave+a[j][i];

b[i]=ave/M;

)

voidmain()

{

inta[M][N]={1,2,3,4,5,6,7,8,9,10,11.12).i,j;

fIoatb[N];

fun(a,b);//調用函數將每行元素的平均值放在b

數組中

for(i=0;i<M;i++)//輸出數組元素和對應的平均值

(

for(j=0;j<N;j++)

printf("%4d",a[i][j]);

printf(H\n");〃在每行數組元素后,輸出均值

1

for(j=0;j<N;j++)

printf("%.2f",b[j]);

getchar();

)

編程訓練8-2計算各科成績的平均分

#incIude"stdio.h"

#incIude"stdIib.h"

#defineM100

#defineN3

intafin(intaFMl[ND〃將文件內容讀入數組.函數值為記

錄個數

{FILE*fp;〃定義文件指針變量

inti=0,n;

if((fp=fopen("d:\\fiIe1.txt","r"))二二NULL)//"讀"方式打

開d:\fiIe1.txt

(

printf("文件打開錯誤!\n");〃如打開有誤,終止程序

exit(0);//強行終止程序

)

whiledfeof(fp))〃文件指針沒到尾

H

fscanf(fp,%d%d%d"f&a[i][0],&a[i][1],&a[i][2]);//

從文件讀數

i++;

)

fcIose(fp);//關閉文件

n=i-1;

returnn;//n表示讀入的記錄個數

)

voidafout(inta[M][N],intn,doubleb[])//將數組內容

寫入文件的函數

(

FILE*fp;

inti;

if((fp=fopen(nd:\\f1.txt“,"w"))==NULL)〃寫方式打開

d盤f1.txt文件

(

printf("文件寫入錯誤!\n");

exit(0);

)

fprint千(fp,”算法JAVA數據結構平均分\n”);

for(i=0;i<n;i++)

fprintf(fp,"%4d%4d%4d%.2f\n".a[i][0],a[i][1],a[i][2],b[

il);

fclose(fp);

)

voidaout(inta[M][N],intn,doubIeb[])//在屏幕顯示數

組內容

(

inti;

printf(“算法JAVA數據結構平均分\n”);〃

for(i=0;i<n;i++)

printf("%4d%4d%4d%.2f\n",a[i][0],a[i][1],a[i][2],b[i]);

)

voidfun1(inta[][3],intn,doubIe*b)

(

inti,j;

for(i=0;i<M;i++)

{b[i]=0;

for(j=0;j<N;j++)

b[i]=b[i]+a[i][j];

b⑴=b[i]/N;

)

)

voidmain()

(

inta[M][N],n;//定義數組和中間變量

doubIeb[M];//定義存放平均值的數組

n=afin(a);〃將文件內容讀入數組

fun1(a,n,b);〃計算a數組n行元素的平均值,放在b數

組中

aout(a,n,b);〃顯示數組內容

afout(a,n,b);//將數組內容寫入文件

getchar();

}

編程訓練8-3計算各科成績的最高分。

#incIude"stdio.h"

#incIude"stdIib.h"

#defineM100

#defineN3

intafin(inta[M][N])〃將文件內容讀入數組,函數值為記

錄個數

{FILE*fp;〃定義文件指針變量

inti=0,n;

if((fp=fopen("d:\\fiIe1.txt",,,r,,))==NULL)//"讀"方式打

開d:\fiIe1.txt

(

printf("文件打開錯誤!\n");〃如打開有誤,終止程序

exit(O);//強行終止程序

)

while(!feof(fp))〃文件指針沒到尾

(

fscanf(fp,"%d%d%d",&a[i][0],&a[i][1],&a[i][2]);//

從文件讀數

i++;

)

fcIose(fp);〃關閉文件

n=i-1;

returnn;〃n表示讀入的記錄個數

}

voidafout(inta[M][N],intn,int*c[])//將數組內容寫

入文件的函數

(

FILE*fp;

inti;

if((fp=fopen("d:\\f1.txt","w"))==NULL)〃寫方式打開

d盤f1.txt文件

(

printf("文件寫入錯誤!\n”);

exit(0);

)

fprintf(fp,”算法JAVA數據結構\rT);

for(i=0;i<n;i++)

fprintf(fp,"%4d%4d%4d\n",a[i][0],a[i][1],a[i][2]);

fprintf(fp,“最高分:\n");

for(i=0;i<N;i++)

fprintf(fp,"%4d",c[i]);

fclose(fp);

)

voidaout(inta[M][N],intn,int*c)//在屏幕顯示數組內

(

inti;

printf("算法JAVA數據結構\n”);〃

for(i=0;i<n;i++)

printf(n%4d%4d%4d

\rT,a[i][0],a[i][1].a⑴⑵);

printf("最高分:\n");

for(i=0;i<N;i++)

printf("%4d",c[i]);

}

voidfun2(inta[][N],intn,int*c)

(

inti,j;

for(j=0;j<N;j++)

{c[j]=a[0][j];

for(i=0;i<n;i++)

if(c[j]<a[i][j])

)

}

voidmain()

(

inta[M][N],n;//定義數組和中間變量

intc[N];〃定義存放最高分的數組

n=afin(a);

溫馨提示

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

評論

0/150

提交評論