Re: [問題] 作業卡關 懇請協助了(讀檔 & 結構部分)
※ 引述《eric123415 (鋼絲螺絲)》之銘言:
: 開發平台(Platform): VC++
: 問題(Question): 讀檔部分卡關 只設計了結構體的部分
: 不知道這種資料要怎讀入結構體
: 餵入的資料(Input):
: txt檔內容
: 第1個數字代表"10個人" 第二個數字代表每個人有"5科"成績
: 接下來一連串數字為成績(等於要每個人 要有五科成績)
: 10 5 53 66 16 77 81 73 9 57 66 98 61 84 68 35 67 86 77 72 8
: 51 35 98 4 45 5 60 77 5 52 89 67 40 32 42 47 82 11 57 52
: 70 5 3 27 72 37 14 38 55 95 50
: 預期的正確結果(Expected Output):
: 能計算每個同學的五科總分+成績 以及全班總分+平均...
: 錯誤結果(Wrong Output):
: 程式碼(Code):(請善用置底文網頁, 記得排版)
: http://ideone.com/KREKY4
: 補充說明(Supplement):
: 不好意思 小弟c++菜鳥...對讀檔方面有點頭痛....
: 懇請大家幫忙了...
用getline讀資料看是要用空白鍵/tab/換行都可以做
google 可以搜尋這個api怎麼使用
寫法自己可以再做調整
----
void main()
{
int studuent = 0;
int subject = 0;
float* scoreArray;
String data;
ifstream file ("data.txt");
if (file.is_open())
{
if (getData(file, data))
{
student = atoi(data.c_str());
}
else
{
return;
}
if (getData(file, data))
{
subject = atoi(data.c_str());
}
else
{
return;
}
int scoreCount = student * subject;
scoreArray = new float(scoreCount);
int count = 0;
while (getData(file, data) && scoreCount > count)
{
*(scoreArray + count) = atof(data.c_str());
++count;
}
...
delete [] scoreArray;
}
}
bool getData(ifstream& file, string& data)
{
if (file.good()) {
getline(file, data, ' '); //以空白鍵區分資料段
return true;
}
return false;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
推
06/23 19:24, , 1F
06/23 19:24, 1F
→
06/23 19:26, , 2F
06/23 19:26, 2F
→
06/23 19:27, , 3F
06/23 19:27, 3F
→
06/23 19:29, , 4F
06/23 19:29, 4F
※ 編輯: FAITHY 來自: 114.25.194.56 (06/23 19:31)
推
06/23 19:35, , 5F
06/23 19:35, 5F
→
06/23 19:40, , 6F
06/23 19:40, 6F
→
06/23 19:41, , 7F
06/23 19:41, 7F
推
06/23 19:45, , 8F
06/23 19:45, 8F
→
06/23 22:09, , 9F
06/23 22:09, 9F
推
06/23 23:04, , 10F
06/23 23:04, 10F
推
06/24 00:42, , 11F
06/24 00:42, 11F
推
06/24 11:27, , 12F
06/24 11:27, 12F
→
06/24 15:19, , 13F
06/24 15:19, 13F
→
06/24 15:33, , 14F
06/24 15:33, 14F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章