第二周作业

第二周作业

基础作业

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

输入:

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

输出

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

# include <stdio.h>
#include <stdlib.h>
int main ()
{
	FILE * fp;
	int a[10];
	int i,x,y=0;
    char c=',';
	if((fp=fopen("D:\yxn.txt","r+"))==NULL){
		printf("File open error!
");
		exit(0);
	} 
	for(i=0;i<6;i++)
	{
		fscanf(fp,"%d%c",&a[i],&c);
		printf("%d%c",a[i],c);
	}
	x=a[0];
	for (i=0;i<6;i++)
	{
		if(x<a[i])
		{x=a[i];
		y=i;
		}
	}
	printf("
%d %d",x,y);
	fprintf(fp,"
%d %d",x,y);
	if(fclose(fp))
	{
		printf("Can not close the file!
");
		exit(0);
	}
	return 0;
}

设计思路:

本题调试过程碰到问题及解决办法:

逗号显示成框框
15 16行加了&c 和 c
27行加入fprintf(fp," %d %d",x,y); 并将之前x y的位置调换
运行结果截图:

原文地址:https://www.cnblogs.com/y-x-n/p/10506174.html