[ACM ] 輸入問題

看板C_and_CPP作者 (Hameimei)時間16年前 (2009/12/13 21:53), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串1/2 (看更多)
這題10201租車加油的問題 我遇上了 cases數前的輸入問題T.T 很少再寫ACM 所以怕問題很新手 GG 題目的Input要 2 500 100 999 150 888 200 777 300 999 400 1009 450 1019 500 1399 600 100 9567 150 86 200 567 300 67 400 8 420 1 450 3 然後我的CODE如下 int cases,c; scanf("%d", &cases); for( c=0;c<cases; c++) { int len, i, j, k; scanf("%d", &len); int n = 1; while( scanf("%d %d", &dist[n], &cost[n]) != EOF) n++; ... } 我使用 cmd 下 10201.ext < sample.txt(就是INPUT) 時 資料流在 ... 500 1399 600 100 956 ... 裡的 1399讀完後 不會結束那迴圈 而會把 600 100 956 也一起吃進去... 要怎麼樣跳過那空白行啊 我想要看到blankline 就結束while GOOGLE上也只是教 scanf("%d",a) != EOF 有做過其他題 他的INPUT都是一個一個不是一對一對時 就沒這問題 懇請大家幫忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.134.41

12/13 21:56, , 1F
while( scanf("%d %d", &dist[n], &cost[n])==2)
12/13 21:56, 1F

12/13 22:21, , 2F
gg ,too T.T
12/13 22:21, 2F

12/13 22:30, , 3F
無法, 請改用 fgets, 再處理 buffer 中的資料
12/13 22:30, 3F

12/13 23:41, , 4F
gets + sscanf
12/13 23:41, 4F
文章代碼(AID): #1B9F7MmP (C_and_CPP)
文章代碼(AID): #1B9F7MmP (C_and_CPP)