2019年春季学期第二周作业

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

实验代码:

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

实验思路:

思维导图连接:https://www.edrawsoft.cn/viewer/public/s/d072d988487127

注意:fprintf()是将括号里的返回到文件里去。

实验错误:

我发现结果没有放入文件中,于是我在书上的用户信息的加密和效验中发现了fprintf。

实验正确截图:

学习进度条:

学习感悟:
指针和数组还需要加强理解。

原文地址:https://www.cnblogs.com/huangnuocheng/p/10509957.html