[問題] 用fscanf讀取txt檔問題

作者: bell1708 (橫山推)   2020-04-07 14:12:16
目前需要讀取的txt檔案內容如下:
3 // 先讀入一整數表示要讀取的資料數
1 3 8 / 7 7 // 第一筆資料
1 3 8 / 7 7 / 5 / X 3 // 第二筆資料
1 3 8 / 7 7 / 5 / X 3 4 6 8 // 第三筆資料
需要依序讀取這三筆資料,分別進行運算,所以要使用到for迴圈和fscanf
目前程式碼如下:
while迴圈那是我沒頭緒亂湊的....
如果只用for、if、while和一維陣列有辦法達成嗎?
#include<stdio.h>
int main()
{
FILE *f1=fopen("t.txt","r");
int sum,s=0,i;
char num[30];
fscanf(f1,"%d",&sum);
printf("%d",sum);
for(i=0;i<sum;i++)
{
while(fscanf(f1,"%c",&num[s])!='\n')
{
printf("%c",num[s]);
s++;
}
}
感謝指導QQ
作者: jigfopsda (jigfopsda)   2020-04-07 15:22:00
try fgets
作者: kaneson (Lance)   2020-04-08 10:40:00
先讀給一個獨立字元變數,確定是什麼東西再放進陣列。這樣寫比較有助理解,非必要把陣列塞到input參數,因為有很多新手坑要解
作者: chengweihsu (安安你好)   2020-04-08 12:41:00
建議你先看一下fscanf()的return value
作者: bell1708 (橫山推)   2020-04-10 04:08:00
謝謝各位最後用fgets解決了

Links booklink

Contact Us: admin [ a t ] ucptt.com