題目1.基礎做業數組
請在第一週做業的基礎上,繼續完成:找出給定的文件中數組的最大值及其對應的最小下標(下標從0開始)。並將最大值和對應的最小下標數值寫入文件。
輸入:
請創建以本身英文名字命名的txt文件,並輸入數組元素數值,元素值之間用逗號分隔。
輸出
在不刪除原有文件內容的狀況下,將最大值和對應的最小下標數值寫入文件。學習
#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; }
(這裏的文件名和文件夾名不一樣於結果的是由於我開始覺得是文件路徑錯誤致使的問題,因此將文件夾名與文件名進行了修改,結果發現不是這個緣由)
遇到的問題:最大值與其的最小下標沒法寫入文件
解決的辦法:我檢查了每一步,改了文件名都沒有找到緣由,實在找不到緣由了就去問了助教,結果發現是我文件中的逗號用的是中文的,因此不能被讀出來。設計