2019年春季学期第二周作业

基础作业

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


实验代码

#include<stdio.h>
#include<stdlib.h>
int main ()
{
	int max;
	int a[6];
	FILE *fp;
	
	
	fp=fopen("F:\N\xiangyujie.txt","r+");   //将指针和目标文件关联
	
	for(int i=0;i<6;i++){
		fscanf(fp,"%d,",&a[i]);      //从文件中读取数据
	}
	
	max=a[0];
	for(int i=1;i<6;i++){
		if(max<a[i])
			max=a[i];
	}
	for(int i=0;i<6;i++){
		if(max==a[i]){
			fprintf(fp,"
%d %d",max,i);   //将找到的最大值及其下标写入文件
                        break;
		}
	}
	
	return 0;
}

思维导图


运行截图

运行前:

运行后:


遇到的问题

编译完成后的exe文件只只在第一次写入目标txt文件时成功,若将第一次写入的数删除,再次运行exe则无法写入。而且用同样的代码和编译器,无法在别人电脑上复现。

学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
3/3-3/9 4小时 100行 二维数组和文件的读取与写入 暂无
原文地址:https://www.cnblogs.com/aomiaox/p/10497717.html