[問題] 關於fprintf的一個問題

看板C_and_CPP (C/C++)作者 (山地貓)時間15年前 (2011/03/31 06:08), 編輯推噓2(203)
留言5則, 5人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev-C++ 請教各位一個問題 這個程式我要讀取一個叫input.txt的檔 裡面的資料格式是"age ratio" ex. 02 0.12 19 0.32 ... 讀取age和ratio後 依照age的大小分成三類 分別輸出到三個不同的txt檔 我現在遇到的問題是在後面的if判斷式似乎只有 age<20 的條件會成立 我確定程式有正確讀入age 看了很久我還是沒有頭緒問題出在哪邊.希望明眼人可以指點一下 謝謝 以下是我的程式碼 ----------------------------------------------------------------- #include<stdio.h> int main(){ FILE *input,*child,*elder,*adult; float ratio; int age; input=fopen("input2.txt","r"); child=fopen("child.txt","w"); adult=fopen("adult.txt","w"); elder=fopen("elder.txt","w"); int i; for(i=0;i<800;i++) { fscanf(input,"%d %f",&age,&ratio); printf("%d %f\n",age,ratio);//檢查是否正確讀入 if((age>20)&&(age<=40))fprintf(adult,"c %f\n",ratio); if(age<20)fprintf(child,"%f\n",ratio); if(age>40)fprintf(elder,"c %f\n",ratio); } return 0; } ------------------------------------------------------------------- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 128.84.246.123

03/31 08:45, , 1F
你的txt的檔案都關閉再執行看看 我測到是可以work的
03/31 08:45, 1F

03/31 08:53, , 2F
把 fclose() 補一下...雖然我想應該沒什麼差 XD
03/31 08:53, 2F

03/31 10:19, , 3F
4個file pointer都有開成功嗎?
03/31 10:19, 3F

03/31 10:44, , 4F
input.txt; input2.txt; 若確定無誤的話我測也沒問題.
03/31 10:44, 4F

03/31 11:24, , 5F
應該是fclose問題 謝謝各位
03/31 11:24, 5F
文章代碼(AID): #1DawdaVE (C_and_CPP)
文章代碼(AID): #1DawdaVE (C_and_CPP)