以下程序的执行结果是 【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语句是用于打开文件失败的异常处理。