问题 填空题

以下程序的执行结果是 【15】
#include <iostream.h>
#include <fstream.h>
#include <stdlib.h>
int main()

fstream outfile, infile;
outfile.open("D:\\text.dat",ios::out);
if(!outfile)

cout<<"text.dat can’t open"<<end1;
abort();

outfile<<"1234567890"<<end1;
outfile<<"abcdefghij"<<end1;
outfile.close();
infile.open("D:\text.dat",ios::in);
if(!infile)

cout<<"text.dat can’t open"<<end1;
abort ( );

char textline[40];
int i=0;
while(!infile.eof())

i++;
infile.getline(textline,sizeof(textline));
cout<<i<<":"<<textline<<end1;

infile.close();
return 0;

答案

参考答案:1:1234567890/2:abcdfghij

解析: 本题考核文件的I/O操作。先来了解eof()成员函数,该函数返回非0值表示已到文件结尾。程序首先定义fstream类的2个对象 outfile和infile。然后在文件text.dat写入两行字符串“1234567890”和“abcdefghii”。最后用getline()函数读取出来存入字符数组textline[40]中,并按行显示出来。程序中的两个if语句是用于打开文件失败的异常处理。

单项选择题
单项选择题