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個小時(主要是卡在了中英文符號那裏)

相關文章
相關標籤/搜索