2019年春季学期第二周做业

1、本周完成的做业

题目1.基础做业数组

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

1).实验代码

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
    FILE * fp = fopen("C:\\Users\\LILI\\Desktop\\work\\LI.txt", "a+");
    
    int i, max;
    char ch;
    int a[10] = {0};
    
    for(i = 0; i < 10; i++)
    {
        fscanf(fp,"%d%c", &a[i], &ch);
        max=0;
    }
    
    for(i = 0; i < 10; i++)
    {
        if(a[i]>a[max])
        max=i;
    }
    fprintf(fp,"\n%d %d", a[max], max);
    
    fclose(fp);
    
    return 0;
    
}

2). 设计思路

3).本题调试过程碰到问题及解决办法

(这里的文件名和文件夹名不一样于结果的是由于我开始觉得是文件路径错误致使的问题,因此将文件夹名与文件名进行了修改,结果发现不是这个缘由)
遇到的问题:最大值与其的最小下标没法写入文件
解决的办法:我检查了每一步,改了文件名都没有找到缘由,实在找不到缘由了就去问了助教,结果发现是我文件中的逗号用的是中文的,因此不能被读出来。设计


4).运行结果截图

2、学习进度条

3、学习感悟

心得:在写代码与检查错误的同时我发现了本身对数组,指针,文件有了更加深刻的了解与记忆,也发现本身对代码的逻辑愈来愈容易理清了。但最重要的是发现本身对C语言的基本使用意识有很大的欠缺,就由于文件里使用了中文符号,就使我做业完成的时间多了一倍多。

完成做业的消耗时间:3个小时(主要是卡在了中英文符号那里)

相关文章
相关标签/搜索