第二周作业

基础作业
请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。

输入格式:

请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。

输出格式:

在不删除原有文件内

容的情况下,将最大值和对应的最小下标数值写入文件.
代码:

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
	FILE*fp;
	int a[6],i,x;
	
	if((fp=fopen("F:\rsz.txt","a+"))==NULL)
	{
		printf("File open error!
");
		exit(0);
	}
	for(i=0;i<6;i++)
	{
		fscanf(fp,"%d,",&a[i]);
		printf("%d",a[i]);
	}
	x=0;
	for(i=1;i<6;i++)
	if(a[i]>a[x])
	x=i;
	printf("%d%d",a[x],x);
	fprintf(fp,",max=%d,index=%d",a[x],x);
	if(fclose(fp)){
		printf("Can not close the file!
");
		exit(0);
	}
	return 0;
 } 

设计思路

本题遇到的问题及解决方法;
起初自己连文件都没建,后来建了文件,但程序不能把文件的数据读进去,后来把文件的扩展名打开后才程序才能读出数据。



程序经过几次修改后才行,起初程序虽然能读出数据了,但必不能写,和追加,后来把程序中的r改成了a+解决了这个问题。
运行结果


本题用时3小时。
学习进度条

学习感悟:
通过这次作业我感觉我上课听的不够认真,上完课后没又及时看书,后来做题目的时候,感觉自己没学过,根据课本是的例题编出了程序,后经过同学帮忙才做出了最后的程序,经过这次作业我发现自己在编程中的很多细节都不明白,比如因为格式很多符号都不能乱加。在以后的学习中我会多多看书,在网上看看教程,丰富自己的知识。

原文地址:https://www.cnblogs.com/dzspve/p/10495187.html