2019年春季学期第二周作业

一、本周完成的作业

题目1.基础作业

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

1).实验代码

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
	FILE * fp = fopen("C:\\Users\\LILI\\Desktop\\work\\LI.txt", "a+");
	
	int i, max;
	char ch;
	int a[10] = {0};
	
	for(i = 0; i < 10; i++)
	{
		fscanf(fp,"%d%c", &a[i], &ch);
		max=0;
	}
	
	for(i = 0; i < 10; i++)
	{
		if(a[i]>a[max])
		max=i;
	}
	fprintf(fp,"\n%d %d", a[max], max);
	
	fclose(fp);
	
	return 0;
	
}

2). 设计思路

3).本题调试过程碰到问题及解决办法

(这里的文件名和文件夹名不同于结果的是因为我开始以为是文件路径错误导致的问题,所以将文件夹名与文件名进行了修改,结果发现不是这个原因)
遇到的问题:最大值与其的最小下标无法写入文件
解决的办法:我检查了每一步,改了文件名都没有找到原因,实在找不到原因了就去问了助教,结果发现是我文件中的逗号用的是中文的,所以不能被读出来。


4).运行结果截图

二、学习进度条

三、学习感悟

心得:在写代码与检查错误的同时我发现了自己对数组,指针,文件有了更加深入的了解与记忆,也发现自己对代码的逻辑越来越容易理清了。但最重要的是发现自己对C语言的基本使用意识有很大的欠缺,就因为文件里使用了中文符号,就使我作业完成的时间多了一倍多。

完成作业的消耗时间:3个小时(主要是卡在了中英文符号那里)

posted @ 2019-03-09 01:32  LILI6  阅读(231)  评论(0编辑  收藏  举报