作者koogoo (Killen)
看板C_and_CPP
標題[問題] Dev C++ 如何將txt檔內的數據做處理
時間Wed Jul 17 19:21:44 2013
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Dev C++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
以下是我txt黨內的數據資料,我想把它用c++,去將數字大小做分類
0-100內的數字有幾個,然後100-200內的數字有幾個,依此類推,
我是打算把數據存到矩陣之中,然後將每個數字除以100,就可以分類
但是我數據資料太多了,共有1048576個數據,我矩陣好像無法設定這麼大
所以請問有其他的寫法嗎???我的程式碼在下面,謝謝!!!!
278
427
454
555
989
1070
1195
1420
914
933
1251
1387
1883
1770
2266
1954
2147
2395
2423
3113
.
.
.
.
.
.
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main(){
int NX,NY,i,j,n,time;
NX=59;
NY=17;
int x[NX],y[NY];
FILE *read;
read=fopen("123.txt","r");
if(read==NULL) printf("can't\n");
else printf("yes\n");
for(i=1;i<1048577;++i){
fscanf(read,"%d",&x[i]);
}
for(n=1;n<175418;++n){
y[n]=0;
}
for(i=1;i<1048577;++i){
for(n=1;n<175418;++n){
if ((n-1) < (x[i]*0.01) && (x[i]*0.01) < n){
y[n]=y[n]+1;
}
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.233.201
→ diabloevagto:改用動態陣列即可 07/17 19:28
推 dophin332:樓上是對的, 但我記得好像可以去ide調記憶體大小 07/17 22:09
→ MOONRAKER:這種簡單統計為什麼要通通塞陣列。 07/17 22:33
→ DarkPrincex:我怎麼覺得最後那個雙層for有點多此一舉。 07/18 02:59
→ DarkPrincex:另外下面這樣*0.01為什麼不用/呢?而且我猜答案是0... 07/18 02:59