如果資料是A X Y ZA1 2 3 5A2 2 5 7A3 3 6 8讀檔時計算行數發現會少算一行算出來是3行int Q = 0;char ch;ch=\'\\0\';while(ch != EOF){ch=fgetc(in);if(ch == \'\\n\') Q++;}fclose(in);是哪裡有問題?麻煩幫我看看謝謝
2006-07-14 13:34:09 · 2 個解答 · 發問者 Anonymous in 電腦與網際網路 ➔ 程式設計
不好意思 打錯了
是if(ch == '\t') Q++;
不是 \n 是\t
可以請問問題出在哪嗎
好像是少算第一行
應該怎麼修正?
2006-07-14 18:16:55 · update #1
如果用這個方法,要看看8的後面是否有換行喔,沒有就會少一次.
2006-07-14 23:59:50 補充:
嗯,真巧合,沒想到會剛好打錯成\n.還來不及看到補充你就已經自己解決問題了,讚喔!
2006-07-14 14:17:18 · answer #1 · answered by chan 5 · 0⤊ 0⤋
樓上有理
或是把結果(ch)印出來
看哪個地方是不是漏掉嚕
2006-07-14 15:01:11 · answer #2 · answered by 大 3 · 0⤊ 0⤋