第二周作业——基础作业
一、本周完成的作业:
请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。
输入:
请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。
输出
在不删除原有文件内容的情况下,将最大值和对应的最小下标数值写入文件。
1).实验代码:(https://www.cnblogs.com/lqx0123/p/10452195.html)
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
int max,n=0;
int num[10];
int i;
if((fp=fopen("D:\\liqingxi\\myfirst\\first_one.txt","a+"))==NULL)
{
printf("File open error!\n");
exit(0);
}
for(i=0;i<5;i++)
{
fscanf(fp,"%d%c",&num[i]);
printf("%d%c",num[i]);
}
printf("\n");
max=num[0];
for(i=0;i<5;i++)
{
if(max<num[i])
{
max=num[i];
n=i;
}
}
fprintf(fp,"\n%d %d",max,n);
printf("%d %d",max,n);
if(fclose(fp) )
{
printf("Can not close the file!\n");
exit(0);
}
return 0;
}
2) 设计思路
3).本题调试过程碰到问题及解决办法
1.运行的结果和文件中的值不同
定义变量的类型搞错了
2.运行后会更改文件中的值
将文件的打开方式由“r”→“a+”



3.元素值之间用逗号分隔
刚开始我不知道怎么去表示,我打算定义一个字符数组,用循环去显示逗号,后来我发现我想多了...因为是在文件中输入元素和逗号,就可以直接用%c去读取。

4).运行结果截图

二、学习进度条
周/日期 |
这周所花的时间 |
代码行 |
学到的知识点简介 |
目前比较迷惑的问题 |
| 3/4-3/10 | 2.5小时 | 300 | 文件,数组,指针 | 暂无 |
三、学习感悟
这次的作业难度不是太大,但是有很多细节容易出错

浙公网安备 33010602011771号