首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将myDoc中的字符序列反转,并输出到
请打开考生文件夹下的解决方案文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将myDoc中的字符序列反转,并输出到
admin
2018-11-11
25
问题
请打开考生文件夹下的解决方案文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将myDoc中的字符序列反转,并输出到文件out.dat中。文件in.dat的长度不大于1000字节。
要求:
补充编制的内容写在“//**********333**********”与“//**********666**********”两行之间。实现将myDoc中的字符序列反转,并将反转后的序列在屏幕上输出。不得修改程序的其他部分。
注意:程序最后已将结果输出到文件out.dat中,输出函数writeToFile已经给出并且调用。
//proj3.cpp
#include<iostream>
#include<fstream>
#include<cstring>
using namespace std;
Class doC
{
private:
char*str;//文本字符串首地址
int length;//文本字符个数
public:
//构造函数,读取文件内容,用于初始化新对象,filename是文件名字符串首地址
doc(char*filename);
void reverse( );//将字符序列反转
~doc( );
void writeToFile(char*filename);
};
doc::doc(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’;
myFiie.close( );
}
void doc::reverse( ){
//将数组str中的length个字符中的第一个字符与最后一个字符交换,第二个字符与倒数第二个
//字符交换……
//***********333***********
//***********666***********
}
doc::~doc( )
{
delete[ ]str;
}
void doc::writeToFile(char*filename)
{
ofstream outFile(filename);
outFile<<str;
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<j;i++,j--) { char temp=str[i];//把Str[i]中的值保存在临时变量temp str[i]=str[j]; //把Str[j]值赋给Str[i],实现字符前后替换 str[j]=temp; //把保存在临时变量temp中的值再赋值给Str[j] }
解析
题目要求将myDoc中的字符序列反转,在main函数中我们看到mvDoc是doc类,根据doc类的定义可以知道它是把读取文件的字符串存到str动态数组中。reverse函数实现将数组str中的length个字符中的第一个字符与最后一个字符交换,第二个字符与倒数第二个字符交换,依次类推。使用变量i和j,分别表示第一个字符和最后一个字符的下标,定义temp作为中间变量进行交换。
转载请注明原文地址:https://jikaoti.com/ti/vwt0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在岂个容量为25的循环队列中,若头指针front=9,尾指针Year=16,则该循环队列中共有______个元素。
语句cout<<setiosflags(ios::showpos)<<38<<""<<-38<<end1;的输出结果为【】。
二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是______。
设有以下类和对象的定义:classA{public:intm;…};Ak1,k2,*p1,*p2;则下面针对成员变量m的引用,错误的是
在进行了任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态,其中只能用于检测输入操作的函数的函数名是
已知语句intm=10;则下列表示引用的表示中正确的是
重载输入流运算符))必须使用的原型为()。
下列选项中不属于软件生命周期开发阶段任务的是()。
在面向对象程序设计中,从外面只能看到对象的外部特征,而不知道无需知道数据的具体结构以及实现操作的算法,这称为对象的______。
有以下类定义:classA{char*a;public:A():a(0){}A(char*aA){//把aa所指字符串复制到a所指的存储空间a=______;strcpy(a
随机试题
患者张某,女性,69岁。素有“脑动脉硬化”病史,近半年逐渐出现善忘,反应迟钝,表情呆滞,有时痛哭不自止,有时大笑不能自控,近3天终日不语,不思饮食。伴见体胖,口流涎沫,舌淡,苔白腻,脉滑。其治疗应首选的方剂是
2010年8月20日,甲公司与乙公司签订了购销合同,约定由甲公司提供6台德国产接触器,单价10万元,总金额为60万元,预付款为4万元,其余款项在收到货物后15日内付清;合同生效后30日内交货,甲公司负责运输,乙公司决定运输方式(如乙公司不指定,则默认为中铁
石油行业的市场结构属于()
个体有控制别人或被别人控制的需要,个体有在权力关系上与他人建立或维持满意人际关系的需要。这种需要是()。
“这一体制的关键问题是教条主义地理解、照搬马克思主义,没有认识到苏联社会主义的特殊性,忽视苏联社会发展阶段的落后状态,盲目追求纯粹的社会主义,在经济上超越了生产力发展水平,政治上忽视民主。”题干中这一体制()。
根据下列材料回答问题。免费午餐基金自2011年4月正式启动,截至2012年底,总收入为4377.4万元,总支出为1459.1万元,结余2918.3万元。2012年度筹资费用约是2011年度的多少倍?()
被告人崔某,1980年出生。1997年5月7日晚在一路口抢走了下班女工的提包,后被过路群众抓获,扭送到附近的某人民法院。法院同志认为这是公安机关管辖的条件,告诉群众应将其扭送到公安局。崔某被扭送到公安局后,公安人员认为崔某符合拘留条件,遂办理法律手续将其拘
构建社会主义和谐社会必须坚持六条基本原则,其中作为构建社会主义和谐社会的重要保证的是
AgluethatholdsthewholeInternettogetheristhenetworklayerprotocol,(71).Unlikemostoldernetworklayerprotocols,itw
A、Artistsoftheworld.B、Artistsofthecountry.C、Studentswhostudyartorcomputer.D、Artistswhousecomputers.CWhomadem
最新回复
(
0
)