首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将my
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将my
admin
2020-06-29
55
问题
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将myDoc中的字符序列反转,并输出到文件out.dat中。文件in.dat的长度不大于1000字节。
要求:
补充编制的内容写在“//********333********”与“//********66666********”两行之间。实现将myDoc中的字符序列反转,并将反转后的序列在屏幕上输出。不得修改程序的其他部分。
注意:程序最后已将结果输出到文件out.dat中,输出函数writeToFile已经给出并且调用。
//proj3.cpp
#inchde
#include
#include
using namespace std;
class doc
{
private:
char *str;//文本字符串首地址
int length;//文本字符个数
public:
//构造函数,读取文件内容,用于初始化新对象,filename是文件名字符串首地址
doc(char*filename);
void reverse();//将字符序列反转
~doc();
void writeToFile(char*filename);
};
doe::doe(char*filename)
{
ifstream myFile(filename);
int len=1001,tmp;
str=new char[len];
length=0;
while((tmp=myFile.get())!=EOF)
{
str[length++]=tmp;
}
str[length]=’\0’;
myFile.close();
}
void doe::reverse(){
//将数组str中的length个字符中的第一个字符与最后一个字符交换,第二个字符与倒数第二个
//字符交换……
//***********333***********
//***********666***********
}
doc::~doc()
{
delete[]str;
}
void doc::writeToFile(char*filename)
{
ofstream outFile(filename);
outFile<
outFile.close();
}
void main()
{
doc myDoc("in.dat");
myDoc.reverse();
myDoc.writeToFile("out.dat");
}
选项
答案
int i,j;//定义两个整数临时变量i.j. for(i=0,j=length-1;i
解析
题目要求将myDoc中的字符序列反转,在main函数中我们看到myDoc是doc类,根据doc类的定义可以知道它是把读取文件的字符串存到str动态数组中。reverse函数实现将数组str中的length个字符中的第一个字符与最后一个字符交换,第二个字符与倒数第二个字符交换,依次类推。使用变量i和j,分别表示第一个字符和最后一个字符的下标,定义temp作为中间变量进行交换。
转载请注明原文地址:https://www.kaotiyun.com/show/Soyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classSample{friendlongfun(Samples);public:Sample(longa){x=a;}private:long
下列语句中错误的是
有下列类模板声明中,出现语法错误的是
下列有关继承和派生的表述中,正确的是
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中包含类MyClass的定义。程序中位于每个“//ERROR****found****”下的一行语句有错误,请加以更正。更正后程序的输出结果应该是:Thevalueis5The
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(intn)的功能是实现对一个整数的加密,具体的加密方法是:一个四位长的整数,每位数字加上3然后除以9的余数代替该数字,再将第一位和第四位交换,第
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:1003732注意:错误的语句在∥********error********的下面,修改该语句即可
下列运算符中,不能被重载的是
下面对类-对象主要特征描述正确的是
设c1和c2是类MyClass的对象,若将前缀运算符"--"和运算符"/"作为类MyClass的友元函数重载,则表达式--c1/c2等价于
随机试题
往来艰涩,迟滞不畅的脉象主病可见
发生月经和孕育胎儿的器官称
在项目生命周期的开始阶段,最适宜的成本计划管理方法是()。
凡是与记账有关的人员,都要在记账凭证上签章。()
由于公司经营不善,已经到了连工资都发不下来的地步。但是,你觉得公司凭借特有的技术和产品,还是有希望搞好的,你会()。
2014年4月25号,中国慈善榜在北京发布,同时揭晓中国慈善家捐赠榜、中国企业慈善榜、中国明星慈善榜三张榜单。()董事局主席以3.7亿元的捐赠额荣获新一届“中国首善”称号。(济宁高新)
表示“1962年10月27日”的日期常量应该写为【】。
有以下程序#include<stdio.h>intf(intx[],intn){if(n>1)returnx[n-1]+f(x,n-1)*10;elsereturnx
F
OnceshamewasaveryBritishemotion.Itgovernedpeople’sliveslongafterstocksandduckingstoolswereabolished.Shakespea
最新回复
(
0
)