2019年春季学期第二周作业

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

代码:

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
	FILE *fp; 
	int i, max;
	int a[10];
	
	if ((fp=fopen ("D:\\c语言\\程序\\zhoudekun.txt","r+"))==NULL)
	{
		printf ("File open error!\n");
		exit (0);
	}
	
	for (i=0;i<10;i++)
	{
		fscanf (fp,"%d",&a[i]);
	    max=0;
	}
	
	for(i=1;i<10;i++)
	   if(a[i]>a[max])
	     max=i;
	     
	 printf("%d %d",a[max],max);
	 
	 fprintf(fp,"\n%d %d",a[max],max);
	
	if (fclose (fp)) {
		printf ("Can not close the file! \n");
		exit (0); 
	}
	return 0;
 } 

思路:

存在的问题和解决办法:

程序能读出数据但没写入数据,最大值下标错误
解决办法:将第一个for语句i=1改为i=0

程序运行结果的截图

posted @ 2019-03-09 11:20  晨曦呐  阅读(115)  评论(1)    收藏  举报