第二周作业

第二周作业

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

输入:

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

输出

在不删除原有文件内容的情况下,将最大值和对应的最小下标数值写入文件。

代码


#include<stdio.h>
#include<stdlib.h>
int main() 
{
	FILE *fl;
	int num[20];		
	
	if((fl=fopen("F:\\新建文件夹 (2)\\CY.txt","r+"))==NULL)  /*打开文件*/ 
	{
	    printf("File open error!\n");
		exit(0);
	 } 
	 
	for(int i=0;i<10;i++)
	{
		/*从文件中读入数值保存到变量中*/
	 	fscanf(fl,"%d",&num[i]);
	}
	
	int d=0;
	int t=num[0];
	for(int i=0;i<10;i++)
	{
		if(num[i]>t)
		{
			t=num[i];
			d=i;
		}
	}
	printf("%d %d\n",t,d);/*输出最大值和对应的最小下标数值到屏幕*/
	
	fprintf(fl,"\n%d %d",t,d); /*将最大值和对应的最小下标数值写入文件*/
	
	if(fclose(fl))
	{
		printf("Can not close the file!\n");
		exit(0);
	 } 
	return 0;
 } 

思路流程图

错误截图

错误原因

只对文件进行了读取而没有写入

解决方法

r改为r+,将只读变为读/写

运行截图

耗时 两小时

总的来说该题的难度并不大,如果认真听了课,并且自己看了书的话,还是能够写得出的

学习进度

周/日期 这周所花的时间 代码行数 学到的知识点简介 目前比较迷惑的问题
3/4-3/15 15小时 200 文件 C预处理器
posted @ 2019-03-07 14:55  孙笑川6324  阅读(176)  评论(2编辑  收藏  举报
1 2 3