使用VC6打开源程序文件modi3.cpp。此程序的功能是将out1.txt文件中的内容输出到屏幕与文件中。输出如下: 李一 1.78m 21 王一 1.65m 23 out2.txt文件的内容如下: 李一 1.78m 21 王一 1.65m

admin2019-06-05  26

问题 使用VC6打开源程序文件modi3.cpp。此程序的功能是将out1.txt文件中的内容输出到屏幕与文件中。输出如下:
李一  1.78m  21
王一  1.65m  23
out2.txt文件的内容如下:
李一  1.78m  21
王一  1.65m  23
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)以输入方式打开文件out1.txt,请在注释//********1********后添加适当的语句。
(2)以输出方式打开文件out2.txt,请在注释//********2********后添加适当的语句。
(3)从文件中获得一个字符,判断是否结束,如果结束则退出输出。请在注释//********3********后添加适当的语句。
(4)把获得的字符输出到文件中,请在注释//********4********后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数
main与其他函数中的任何内容。
#include<iostream.h>
#include<fstream.h>
#include<stdlib.h>
void main()
{
char ch;
fstream infile,outfile;
//********1********
infile.open("out1.txt");
if(!infile)
{
cout<<"out1.txt文件不能打开"<<endl;
abort();
}
//********2********
outfile.open("out2.txt");
if(!outfile)
{
cout<<"out2.txt文件不能打开"<<endl;
abort();
}
//********3********
while()
{
cout<<ch;
//********4********
}
cout<<endl;
infile.close();
outfile.close(),
}

选项

答案(1)将“infile.open("out1.txt");”补充完整为:infile.open("out1.txt",ios::in); (2)将“outfile.open("out2.txt")j”补充完整为:outfile.open("out2.txt",ios::out); (3)将“while()”补充完整为:while(infile.get(ch)) (4)添加语句:outfile<<ch;

解析 (1)题目1要求“以输入方式打开文件out1.txt”。在C++中调用文件流的成员函数open的格式为,文件流类.open("文件名",ios::in),所以第1个标识下语句就该为“infile.open("out1.txt",ios::in);”。
(2)题目2要求“以输出方式打开文件out2.txt”。同理第2个标识下修改为“outfile.open("out2.txt",ios::out);”。
(3)题目3要求“从文件中获得一个字符,判断是否结束”。程序中的“while()”循环判断语句中缺少从文件中获得的字符,所以这里补全while循环判断条件,即“while(infile.get(ch))”。
(4)题目4要求“把获得的字符输出到文件中”。在C++中,用流插入运算符为“<<”,所以根据题干中的要求在第四个标识下补全写入文件的流操作语句,即“outfile<<ch;”。
转载请注明原文地址:https://kaotiyun.com/show/zm8p777K
0

最新回复(0)