第二周作业

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

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

输出:

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

1)实验代码

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

2)设计思路

3)本题碰到的问题及解决方法

+
问题:记事本不显示结果
方法:刚开始我一直以为先要把先输入的数字在记事本上保存好,然后在DEV上运行再次输入数字,运行程序。然而记事本上没有结果,后来才知道“w+”是可以写和建立一个文本的
+
问题:输出结果问题
方法:Dev输出的格式和记事本不一样,后来知道要同时写printf和fprintf

4)实验结果

二、学习进度条

三、学习感悟
刚接触这个文件的数据处理,不知道怎么动手,后来反复看一下书和教学视频才懂的一些,还是要多学习。

原文地址:https://www.cnblogs.com/tanghenghui/p/10500833.html