2019年春季学期第二周作业
基础作业
请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。
输入:
请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。
输出
在不删除原有文件内容的情况下,将最大值和对应的最小下标数值写入文件。
实验代码:
#include <stdio.h>
#include <stdlib.h>
int main () {
FILE * fp;
int m=0,i,max;
char a [10];
if ((fp = fopen ("C:\Users\我不是坏家伙\Desktop\FLZ\flz.txt","a+") )==NULL) {
printf ("File open error!
");
exit (0);
}
for (i=0; i<6; i++) {
fscanf (fp,"%d%c",&a [i]);
printf ("%d%c",a [i]);
}
printf ("
");
max=a [0];
for (i=0; i<6; i++) {
if (a [i] > a [m])
m=i;
}
fprintf (fp,"%d %d
",a [m], m);
printf ("%d %d
",a [m], m);
if (fclose (fp)) {
printf ("Can not close the file!
");
exit (0);
}
return 0;
实验中出现的问题及错误:
<1>运行中出现数字不对,路径出现问题。解决方案:自己尝试修改。
<2>对于形态字符串不明白。解决方案:百度一下知道:a以附加的方式打开只写文件,若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即原先文件的内容会被保留。
a+以附加方式打开可读写的文件,若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即原先文件的内容会被保留。
实验过程图:
}