首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开源程序文件modi3.cpp。其中类TestClass用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。此程序将int.txt文件中的内容输出到屏幕,并且将文件按照以上方式
使用VC6打开源程序文件modi3.cpp。其中类TestClass用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。此程序将int.txt文件中的内容输出到屏幕,并且将文件按照以上方式
admin
2013-09-11
13
问题
使用VC6打开源程序文件modi3.cpp。其中类TestClass用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。此程序将int.txt文件中的内容输出到屏幕,并且将文件按照以上方式分割,存于文件out1.txt和out2。txt中。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)从输入文件中获得一个字符,并判断是否到文件结尾,如果到文件结尾,则退出循环。请在注释//******error******后添加适当的语句。
(2)把获得的输入文件的内容存储到buf中,并且用len记录下文件的长度。请在注释//******error******后添加适当的语句。
(3)将输入文件的后一半内容存储在第二个文件中,请在注释//********3********后添加适当的语句。
(4)使用文件流对象打开输入文件in.txt,请在注释//********4********后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
#include
#include
#include
class TestClass
{
public:
TestClass(char*fileName)
{
len=0;
fstream infile;
infile.open(fileName,ios::in);
char ch;
//********1********
while()
{
cout<
//********2********
}
infile.close();
}
void split()
{
fstream outfile1;
fstream outfile2;
outfile1.open(“outl.txt”,ios::out);
outfile2.open(“out2.txt”,ios::out);
int i=0;
for(i=1;i
{
0utfile1<
;
}
d0{
//********3********
)while(i!=len);
outfile 1.close();
outfile2.close();
}
private:
int len;
char buf[1024];
};
void main()
{
//********4********
TestClass Fsp();
Fsp.split();
return;
}
选项
答案
(1)将“while()”完整为:while(infile.cet(ch)) (2)添加语句:buf[1en++]=ch; (3)添加语句:outfile2<
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的main主函数开始入手,可以看出程序通过调用类TestClass及其成员函数实现各种输出操作。
[解题思路]
(1)题目l要求“从输入文件中获得一个字符,并判断是否到文件结尾”。程序中的“while()”循环判断语句中缺少从文件中获得的字符,所以这里补全while循环判断条件, 即“while(infile.get(ch))”。
(2)题目2要求“把获得的输入文件的内容存储到buf中,并且用len记录下文件的长度。”所以为but分配空间,即“buf[1en++]=ch;”。
(3)题目3要求“将输入文件的后一半内容存储在第二个文件中。”在c++中,用流插入运算符为“<<”,所将buf中存放的数据存入文件outfile2,以根据题干中的要求,即这里补全“outfile2<
(4)题目4要求“使用文件流对象打开输入文件modi3.txt。”程序应该是调用类“TestClass”中的成员函数“split”。类的构造函数定义中存在参数char*fileName,所以修改注释下的语句缺少参数。即“TestClass Fsp("modi3.txt”);”。
转载请注明原文地址:https://jikaoti.com/ti/UeXiFFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
1915年在中国近代历史上看上去似乎没有特别重大的划时代的历史事件,但这一年发生的许多事件。既是此前各种矛盾发展的结果,又对此后的历史进程产生了重要影响。使这一年成为重要的历史关节点。请结合史事加以论述。(中山大学2015年历史学基础A真题)
简述《蒙巴顿方案》的主要内容。(东北师范大学2000年世界现代史真题)
论述我国社会主义过渡时期总路线的内容及其实施原因。(湖南师范大学2014年中国史综合真题)
概述雅尔塔体系的内容及其性质。(厦门大学2002年世界现代史真题;南京大学2002年加试世界近现代史真题)
关于教育民主化,下列说法不正确的是
教育不可能是价值中立的,“应该”并且“原本”就是政治的。出自哪一个教育学流派
教育制度包括国家各级各类实施教育的机构体系及其
以法的地位、效力、内容和制定程序为标准,法可以划分为()
(2015年真题)甲系精神病人,有亲属如下:母亲,75周岁,瘫痪在床;弟弟,48周岁,工人;儿子,20周岁,在校大学生;女儿,17周岁,无业。甲的监护人应为()。
对函数f(χ)(4-t)ln(1+t)dt().
随机试题
红细胞悬浮稳定性降低的主要原因是
当实际产出上升时()。
限额设计的目标包括()。
下列各项中,属于经营活动流入现金的是()。
出版于上个世纪20年代,被誉为“美国最伟大的小说”的是()。
WetendtothinkofthedecadesimmediatelyfollowingWorldWarIIasatimeofprosperityandgrowth,withsoldiersreturningh
UML叫做统一建模语言,它把Booch、Rumbaugh和Jacobson等各自独立的OOA和OOD方法中最优秀的特色组合成一个统一的方法。UML允许软件工程师使用由一组语法的语义的实用的规则支配的符号来表示分析模型。在UML中用5种不同的视图来表示一个系
WhyPeopleUsePseudonyms(假名字)?Youcan’tchoosethenameyouaregivenatbirth,butinmanycountriesyoucanchangeit
AformerGovernmentchiefscientistoncetoldmethatweshouldalwayshaveaPlanBreadyincasePlanAdoesn’twork—ordoesn’
A、Tendecades.B、Aquarterofcentury.C、Onedecade.D、One-tenthofyear.CHowlongdidittaketocuttheSuezCanal?
最新回复
(
0
)