请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。
输入:
请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。
输出
在不删除原有文件内容的情况下,将最大值和对应的最小下标数值写入文件。
代码
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(void)
{
FILE *fp;
int b,c,z,i;
scanf("%d
",&b);
int a[b];
if((fp=fopen("C:\Users\ASUS\Desktop\d\吴小波.txt","a+"))==NULL)
printf("File open error!
");
fprintf(fp,"%d
",b);
for(i=0;i<b;i++)
{
scanf("%d",&a[i]);
fprintf(fp,"%d",a[i]);
}
z=a[0];
c=0;
for(i=1;i<b;i++)
if(a[i]>z){
z=a[i];
c=i;
}
printf("%d %d",z,c);
fprintf(fp,"
%d%d",z,c);
if(fclose(fp)){
printf("Can not close the file!
");
}
return 0;
}
流程图
问题
文件打开方式错误,一开始用的r+
解决方案:翻书,参照307页的表格尝试更改,最后成功解决
运行结果截图
二,学习进度条
| 周/日期 | 这周所花时间 | 代码行 | 知识点简介 | 困惑问题 |
|-|-|-|-|-|-|
| 2/3月9 | 两小时 | 31 | 指针和文件的打开和编辑 | 无 |
三,学习感悟
说实话,我没预习指针,所以老师上课讲的我有点懵,但是到了编程完成作业时我看看书,再从网上找俩视频看看,我又会了。所以学c其实不难,只要肯下功夫,多半能学会。