第二周作业

题目
请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。
输入:
请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。
输出
在不删除原有文件内容的情况下,将最大值和对应的最小下标数值写入文件。

1.源代码

include<stdio.h>

include<stdlib.h>

int main(void)
{
FILE * fp;
int i,m,n;
int a[5];
if((fp=fopen("C:\Users\zxl\Desktop\zxl.txt","r+"))==NULL){
printf("File open error!\n");
exit(0);
}
for(i=0;i<5;i++)
{
fscanf(fp,"%d",&a[i]);

}
m=a[0];
for(i=0;i<5;i++) {
	if(m<a[i])
	  m=a[i];
	  n=i;
}
fprintf(fp,"\n%d %d",m,n);
if(fclose(fp)){
	printf("Can not close the file!\n");
	exit(0);
}
return 0;

}

2,设计思路
第一步 定义指针变量及其数组,然后判断是否能够打开文件;
第二步 打开文件,将数组第一个数定义为最大值,通过循环结构将数组的数进行逐个比较,最后找出最大值和对应的最大值的最小下标

3.遇到的问题及其解决方法
第一个 编译错误,r+后面多打了引号

第二个 文件地址输入错误,少打了文件名,导致文件打不开,然后数值无法输入文件

4运行结果图

5心得
自己写代码的时候还不够细心,出现很多小错误,而且这种小错误很难再找出来,以后还是要注意的

posted @ 2019-03-09 14:58  zxlzxl  阅读(120)  评论(0编辑  收藏  举报