| 查看: 2003 | 回复: 20 | ||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | ||
[求助]
一下的数据如何通过C++读取
|
||
|
数据文件例子:test.txt Frame 3.0 12.0 20.0 1.0 7.0 7.0 15.0 21.0 4.0 Frame 2.0 2.0 15.0 1.0 12.0 3.0 11.0 2.0 23.0 Frame 2.0 21.0 15.0 11.0 12.0 13.0 11.0 2.0 23.0 例子中共有k(k=3)组数据,每组数据n行(n=3),m列(n=3)。 想把它读入a1[k][n],a2[k][n],a3[k][n]数组中,用二维数组保存,要求数组第一个下标对应的是组数k,而第二个下标对应的是行数n,数组名已经区分了列数(实际中代表不同类型的数据,所以用不同数组明区分,后面好进行处理),这里是3列所有用了三个数组a1,a2,a3。 多谢高手指点。 |
» 猜你喜欢
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
实验室接单子
已经有7人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
参与限项
已经有3人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复

20楼2013-06-04 17:00:12
2楼2013-06-02 18:54:02
【答案】应助回帖
★
xzhdty: 金币+1, 谢谢参与 2013-06-02 20:49:07
xzhdty: 金币+1, 谢谢参与 2013-06-02 20:49:07
|
#include<iostream> #include<fstream> using std::cout ; int main() { const char *filename = "test.txt 所在的绝对路径" ; std::ifstream is(filename ) ; double a1[3][3] = {0} ; double a2[3][3] = {0} ; double a3[3][3] = {0} ; for (int k = 0 ; k != 3 ; ++k) for (int n = 0 ; n != 3 ; ++n) { //is >> data ; switch(n) { case 0 : is >> a1[k][n] >> a2[k][n] >> a3[k][n]; break ; case 1 : is >> a1[k][n] >> a2[k][n] >> a3[k][n] ; break ; case 2 : is >> a1[k][n] >> a2[k][n] >> a3[k][n] ; break ; } } for (int k = 0 ; k != 3 ; ++k) //为了测试正确性 35 for (int n = 0 ; n != 3 ; ++n) 36 { 37 cout << a1[k][n] << "\t" << a2[k][n] << "\t" << a3[k][n] << std::endl ; 38 } return 0 ; } |
3楼2013-06-02 20:25:07

4楼2013-06-02 21:14:37












回复此楼