|
题目要求:1. 建立2个磁盘文件f1.dat和f2.dat,编程实现下列工作:
(1).从键盘输入20个整数,分别存放在两个磁盘文件中,每个文件存放10个整数
(2)从f1.dat 读入10个数,然后存放在f2.dat文件原有数据的后面
我的问题:1.不知道是否写入了文件,2.如何从文件中把整数读出来,谢谢~~~
[code:1]#include <iostream>
#include <fstream>
using namespace std;
void main()
{
int i=0;
int num[10];
int ch;
ofstream ofile;
ifstream ifile;
//第一个文件数据输入
ofile.open("f1.dat",ios_base::binary);
for(i=0;i<10;i++)
{
num[i]=i*10;
}
ofile.write((char *)&num,sizeof num);
ofile.close();
//第二个文件数据输入
ofile.open("f2.dat",ios_base::binary);
for(i=0;i<10;i++)
{
num[i]=i*i;
}
ofile.write((char *)&num,sizeof num);
ofile.close();
//从第一个文件读入,并且输入第二个文件
ifile.open("f1.dat",ios_base::binary);
ofile.open("f2.dat",ios_base::app||ios_base::ate);
for(i=0;i<=10;i++)
num[i]=0;
for(i=0;i<=10;i++){
ifile.read((char *)&num,sizeof(int));
ofile.write((char *)&num,sizeof(int));
cout<<num[i]<<'\n';
}
ofile.write((char *)&num,sizeof num);
ifile.close();
ofile.close();
//从第二个文件输入并排序
cout<<"hello"<<'\n';
ifile.open("f2.dat",ios_base::binary);
for(i=0;i<=20;i++)
{
ifile.read((char *)&num,sizeof(int));
cout<<num[i]<<'\n';
}
}[/code:1]
//此程序不正确,希望能指正,再次感谢~~~[/code] |
|