for(;n>5||n 條件寫法錯誤,導致無限循環feof(fp) 控制循環會多讀一行scanf("%d%d,&s.snum,&s.cnum") 格式字符串缺少引號閉合do-while 循環fscanf(...) == 8 判斷// 正確的文件讀取循環
while (fscanf(fp, "%d%s%s%d%d%d%d%d",
&c.num, c.name, c.kind, &c.ttime, &c.etime,
&c.taltime, &c.mark, &c.term) == 8) {
// 處理數據
}
見最佳回答提供的完整修正版,可直接編譯運行。