求助:C++编程对txt文件读写操作
有一个名叫data.txt的文件,里面的数据是这样的:1230.1233210.321........(30行)现在用C++实现:打开data.txt文件,读每行数据,之...
有一个名叫data.txt的文件,里面的数据是这样的:
123 0.123
321 0.321
........(30行)
现在用C++实现:打开data.txt文件,读每行数据,之后两个数相加,然后输出写入到这行的后面保存。。例如:
123 0.123 123.123
321 0.321 321.321 展开
123 0.123
321 0.321
........(30行)
现在用C++实现:打开data.txt文件,读每行数据,之后两个数相加,然后输出写入到这行的后面保存。。例如:
123 0.123 123.123
321 0.321 321.321 展开
3个回答
展开全部
楼上写的有点点错误,改了,可以达到楼主的目的
#include<iostream>
#include<fstream>
using namespace std;
void main(){
double a[30],b[30];
double sum[30];
int i = 0;
ifstream ifile;
ifile.open("data.txt");
while(ifile>>a[i]>>b[i])
{
sum[i]=a[i]+b[i];
i++;
}
ifile.close();
ofstream ofile;
ofile.open("data.txt");
int j = 0;
while (j != i)
{
ofile<<a[j]<<" "<<b[j]<<" "<<sum[j]<<endl;
j++;
}
ofile.close();
}
#include<iostream>
#include<fstream>
using namespace std;
void main(){
double a[30],b[30];
double sum[30];
int i = 0;
ifstream ifile;
ifile.open("data.txt");
while(ifile>>a[i]>>b[i])
{
sum[i]=a[i]+b[i];
i++;
}
ifile.close();
ofstream ofile;
ofile.open("data.txt");
int j = 0;
while (j != i)
{
ofile<<a[j]<<" "<<b[j]<<" "<<sum[j]<<endl;
j++;
}
ofile.close();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#include<fstream>
#include<sstream>
#include<string>
using namespace std;
int main()
{
double x[30], y[30];
double sum[30]={0};
int i,count=0;
string line;
ifstream ifs;
ifs.open("data.txt");
while(getline(ifs,line)&&count<30)
{
istringstream is(line);
is >> x[count] >> y[count];
sum[count] = x[count] + y[count];
count++;
}
ifs.close();
ofstream ofs;
ofs.open("data.txt");
for (i = 0; i<count; i++)
{
ofs << x[i] << " " << y[i] << " " << sum[i] << endl;
}
ofs.close();
return 0;
}
#include<fstream>
#include<sstream>
#include<string>
using namespace std;
int main()
{
double x[30], y[30];
double sum[30]={0};
int i,count=0;
string line;
ifstream ifs;
ifs.open("data.txt");
while(getline(ifs,line)&&count<30)
{
istringstream is(line);
is >> x[count] >> y[count];
sum[count] = x[count] + y[count];
count++;
}
ifs.close();
ofstream ofs;
ofs.open("data.txt");
for (i = 0; i<count; i++)
{
ofs << x[i] << " " << y[i] << " " << sum[i] << endl;
}
ofs.close();
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#include<fstream>
using namespace std;
void main(){
double a[30],b[30];
double sum[30];
ifstream ifile;
ifile.open("data.txt");
for(int i=1;i<=30;i++){
ifile>>a[i]>>b[i];
sum[i]=a[i]+b[i];
}
ifile.close();
ofstream ofile;
ofile.open("data.txt");
for(int j=1;j<=30;j++){
ofile>>a[j]>>" ">>b[j]>>" ">>sum[j]>>endl;
}
ofile.close();
}
我直接在网页上写的,没编译检查,如果有错你再问我。
#include<fstream>
using namespace std;
void main(){
double a[30],b[30];
double sum[30];
ifstream ifile;
ifile.open("data.txt");
for(int i=1;i<=30;i++){
ifile>>a[i]>>b[i];
sum[i]=a[i]+b[i];
}
ifile.close();
ofstream ofile;
ofile.open("data.txt");
for(int j=1;j<=30;j++){
ofile>>a[j]>>" ">>b[j]>>" ">>sum[j]>>endl;
}
ofile.close();
}
我直接在网页上写的,没编译检查,如果有错你再问我。
追问
编译后ofile>>a[j]>>" ">>b[j]>>" ">>sum[j]>>endl;这一行出错了。。
提示说:
error C2784: “std::basic_istream &std::operator >>(std::basic_istream &&,_Ty &)”: 未能从“std::ofstream”为“std::basic_istream &&”推导 模板 参数
追答
打反了,应该是ofile<<
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询