《C语言学习与应用》课后习题及答案08_第1页
《C语言学习与应用》课后习题及答案08_第2页
《C语言学习与应用》课后习题及答案08_第3页
《C语言学习与应用》课后习题及答案08_第4页
《C语言学习与应用》课后习题及答案08_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习任务八参考答案

问题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. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论