fishyuyee 2023-02-16 11:39 采纳率: 100%
浏览 11
已结题

用>>写入文件的时候会报错,求解答

用>>写入文件的时候会报错,求解答


#include<iostream>

#include<fstream>

#include<string>

using namespace std;

void shuru()

{

 ofstream file1("f1,dat");

 if (!file1)

 {

 cerr << "文件打开失败!";

 abort();

 }

 ofstream file2("f2.dat");

 if (!file2)

 {

 cerr << "文件打开失败!";

 abort();

 }

 int a[20];

 for (int i = 0; i < 20; i++)

 cin >> a[i];

 for (int i = 0; i < 10; i++)

 {

 file1 << a[i] << " ";

 }

 for (int i = 10; i < 20; i++)

 {

 file2 << a[i] << " ";

 }

}

void add()

{

 ofstream file1("f1,dat");

 if (!file1)

 {

 cerr << "文件打开失败!";

 abort();

 }

 ofstream file2("f2.dat",ios::app);

 if (!file2)

 {

 cerr << "文件打开失败!";

 abort();

 }

 int a;

 for (int i = 0; i < 10; i++)

 {

 file1 >> a;

 file2 << a << " ";

 }

 file1.close();

 file2.close();

}

void rank_add()

{

 ofstream file1("f1,dat");

 if (!file1)

 {

 cerr << "文件打开失败!";

 abort();

 }

 ofstream file2("f2,dat");

 if (!file2)

 {

 cerr << "文件打开失败!";

 abort();

 }

 int a[20],temp;

 for (int i = 0; i < 20; i++)

 {

 file2 >> a[i];

 }

 for(int i=0;i<19;i++)

 for (int j = 0; j < 19 - i; i++)

 {

 if (a[j] > a[j + i])

 {

 a[j] = temp;

 a[j] = a[j + 1];

 a[j + 1] = temp;

 }

 }

 file2.close();

 ofstream file2("f2.dat", ios::out);


 for (int i = 0; i < 20; i++)

 {

 file2 << a[i]<<" ";

 }

 file2.close();

 file1.close();

}

int main()

{

 shuru();//(1)

 add();//(2)

 rank_add();//(3)

 return 0;

 

}

img

  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2023-02-16 11:46
    关注

    file1是ofstream,是输出流,只能用<<
    你这file1和file2都定义的是输出流,但你一会儿输入,一会儿输出,肯定不行啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月26日
  • 已采纳回答 2月18日
  • 创建了问题 2月16日

悬赏问题

  • ¥30 自适应 LMS 算法实现 FIR 最佳维纳滤波器matlab方案
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥15 Python3.5 相关代码写作
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像