怎样将从txt文件里读取的数据赋给变量

audrey1 2004-12-16 10:14:11
txt文档里有三列200行double型的数据,每行的三个数据间用
空格键隔开,每两行之间用enter键换行。怎样把这三列的数据
分别赋给x[100],y[100],z[100]呢。
...全文
272 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
JackyRao 2004-12-17
  • 打赏
  • 举报
回复
补充:fscanf(pf, &x[i], &y[i], &z[i]);
应为:
fscanf(pf, "%f %f %f",&x[i], &y[i], &z[i]);
JackyRao 2004-12-17
  • 打赏
  • 举报
回复
FILE*pf;
if ((pf = fopen("C:\\test.txt", "r")) == NULL)
return;
double x[100];
double y[100];
double z[100];
for (int i=0; i<100; i++)
{
fscanf(pf, &x[i], &y[i], &z[i]);
}
fclose(pf);
cizi_nwu 2004-12-17
  • 打赏
  • 举报
回复
#include <iostream.h>
#include <fstream.h>
using namespace std;

const int ARR = 100;

int main(int argc, char** argv)
{
(void) argc;
(void) argv;
double x[ARR],
y[ARR],
z[ARR];
ifstream in("test.txt");
for (int i = 0; i < 200; i++)
{
in >> x[i];
in >> y[i];
in >> z[i];
}

return 0;
}
总的行数最好不要固定,应该通过程序来读出……
blackmouth 2004-12-17
  • 打赏
  • 举报
回复
#include<fstream>
using namespace std;
...
double x[size],y[size],z[size];
ifstream in("文件路径");
for(int i=0;i<200;++i)
in>>x[i],
in>>y[i],
in>>z[i];
C++版的
muyi_dn 2004-12-16
  • 打赏
  • 举报
回复
对,知道了它是以double型保存的就好办,那就八个字节八个字节的读,循环以下就搞定了
Ewaterfish 2004-12-16
  • 打赏
  • 举报
回复
用ifstream打开文件然后作个循环读文件分别赋给x[i],y[i],z[i]就可以了
cai114 2004-12-16
  • 打赏
  • 举报
回复
兄台还是倒出一个表吧,这样太累人了

64,643

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧