首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开源程序文件modi3.cpp。其中类TestClass用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。 此程序将int.txt文件中的内容输出到屏幕,并且将文件按
使用VC6打开源程序文件modi3.cpp。其中类TestClass用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。 此程序将int.txt文件中的内容输出到屏幕,并且将文件按
admin
2017-03-22
32
问题
使用VC6打开源程序文件modi3.cpp。其中类TestClass用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。
此程序将int.txt文件中的内容输出到屏幕,并且将文件按照以上方式分割,存于文件out1.txt和out2.txt中。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)从输入文件中获得一个字符,并判断是否到文件结尾,如果到文件结尾,则退出循环。请在注释//********1********后添加适当的语句。
(2)把获得的输入文件的内容存储到buf中,并且用len记录下文件的长度。请在注释//********2********后添加适当的语句。
(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;
outfilel.open("out1.txt",
ios::out);
outfile2.open("out2.txt",
ios::out);
int i=0;
for(i=0;i
{
outfilel<
;
}
do{
//********3********
}while(i!=len);
outfile1.close();
outfile2.CioSe();
}
private:
int len;
char buf[1024];
);
void main()
{
//********4********
TestClass Fsp();
Fsp.split();
return;
}
选项
答案
(1)将“while()”完整为:while(infile.get(ch)) (2)添加语句:buf[len++]=ch; (3)添加语句:outfile2<
解析
(1)题目1要求“从输入文件中获得一个字符,并判断是否到文件结尾”。程序中的“while()”循环判断语句中缺少从文件中获得的字符,所以这里补全while循环判断条件, 即“while(infile.get(ch))”。
(2)题目2要求“把获得的输入文件的内容存储到buf中,并且用len记录下文件的长度。”所以为buf分配空间,即“buf[len++]=ch;”。
(3)题目3要求“将输入文件的后一半内容存储在第二个文件中。”在C++中,用流插入运算符为“<<”,所将buf中存放的数据存入文件outfile2,以根据题干中的要求,即这里补全“outfile2<
(4)题目4要求“使用文件流对象打开输入文件modi3.txt。”程序应该是调用类“TestClass”中的成员函数“split”。类的构造函数定义中存在参数char*fileName,所以修改注释下的语句缺少参数。即“TestClass Fsp("modi3.txt");”。
转载请注明原文地址:https://jikaoti.com/ti/fHt0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
数据库设计包括两个方面的设计内容,它们是
在下面横线上填上适当的语句,完成程序。#include<iostream>usingnamespacestd;classBase{intx;public:
下面程序的运行结果是【】。#include<iostream>usingnamespacestd;classcount{staticintn;public:
下面程序的结果是#include<iostream.h>classA{inta;public:A():a(1){}
下列工具中为需求分析常用工具的是
计算斐波那契数列第n项的函数定义如下:intfib(intn){if(n==0)return1;elseif(n==1)return2;elsereturnfib(n-1)+ilb(n-2);}若执行函数调用表达式fib(
已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则
请将下面的类Date的定义补充完整,使得由语句:DateFirstDay;定义的对象FirstDay的值为2010年1月1日。classDate{public:Date(______):year(y),month(
有如下的函数定义:intXfun(int*a,intn){intX*a;for(int*pa=a+1;paif(*pa>x)x=*pa;retumx;}若在执行了语句:intx[5]
随机试题
允许收缴、扣留机动车驾驶证的部门只有________。
评估资产的“在用价值”依据的是资产评估的()
布线用塑料管和塑料线槽,应采用难燃材料,其氧指数应大于:(2004,105)
下列中不属于中国银行的核心价值观的是()。
亚投行参与国不包括()。
甲、乙两人从A地出发骑车去B地,已知甲每小时比乙多骑5千米,四小时后甲到达B地后立即返回A地,在距B地15千米的地方遇到乙。则乙还要多久到达B地?()
通过调查得知,并非所有的个体商贩都有偷税、逃税行为。如果上述调查的结论是真实的,则以下哪项一定为真:
以下程序运行后输入:3,abcde,则输出结果是【 】#include <string.h> move(char*str,intn) {chartemp;inti; temp=str[n-1]; for(i=n-1;i
A、Oneminute.B、Halfaminute.C、20seconds.D、10seconds.D访谈中女士提到,招聘者在每份简历上只会花10秒左右的时间,因此本题选D。
WhatkindofprogramisDoctorLevydescribing?
最新回复
(
0
)