首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中定义了MyString类,一个用于表示字符串的类。成员函数reverse的功能是将字符串进行“反转”。例如,将字符串ABCDEF“反转”后,得到字符串FEDCBA;将字符串ABC
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中定义了MyString类,一个用于表示字符串的类。成员函数reverse的功能是将字符串进行“反转”。例如,将字符串ABCDEF“反转”后,得到字符串FEDCBA;将字符串ABC
admin
2016-08-19
70
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中定义了MyString类,一个用于表示字符串的类。成员函数reverse的功能是将字符串进行“反转”。例如,将字符串ABCDEF“反转”后,得到字符串FEDCBA;将字符串ABCDEFG“反转”后,得到字符串GFEDCBA。请编写成员函数reverse。在main函数中给出了一组测试数据,此时程序运行中应显示:
读取输入文件…
一反转前…
STRl:ABCDEF
sTR2=ABCDEFG
…反转后…
STRl=FEDCBA
STR2=GFEDCBA
要求:
补充编制的内容写在“//**********333**********”与“//**********666**********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中,输出函数WriteToFile已经编译为obj文件,并且在本程序中调用。
1 //mgsering.h
2 #include
3 #include
4 using namespace std;
5
6 class MyString{
7 public:
8 HyString(const char*s)
9 {
10 str =new char[strlen(s) +1];
11 strcpy(sir,s);
12 }
13
14 ~NyString(){delete[]str;}
15
16 voLd reverse();
17 friend ostream&operator<(os-tream&os,const HyString&mystr)
18 {
19 os <
20 retuErn os;
21 }
22 private:
23 char*str;
24 };
25 void writeToFile(char *, const HyString&);
1 //main.cpp
2 #include"mystring.h"
3 #inclucle
4
5 void MyString::reVerse()
6 {
7 //********333********
8
9
10 //********666********
11 }
12
13 int main()
14 {
15 char inname[128],pathname[80];
16 strcpy(pathname," ");
17 sprintf(inname,"in.dat",path-name);
18 cout<<"读取输入文件…\n\n";
19 ifstream infile(inname);
20 if(infile.fail()) {
21 cerr<<"打开输入文件失败!";
22 exit(1);
23 }
24
25 char buf[4096];
26 infile.getlihe(bur,4096);
27 HyString str1("ABCDEF"),sir2("AB-CDEFG"),str3(buf);
28 cout<<"---反转前---\n";
29 tout<<"STR1="<
30 cout<<"STR2=" <
31
32 str1.reverse();
33 str2.reverse();
34 str3.reverse();
35 tout<<"---反转后---\n";
36 tout<<"STR1="<
37 cout<<"STR2 =" <
38
39 writeToFile(pathname,$tr3);
40 return 0;
41 }
选项
答案
1 int length=strlen(str);//把字符串Str的长度赋值给lenth 2 for(int i=0,j=length—l;i
解析
主要考查考生对动态数组的掌握,先看题目要求:成员函数reverse的功能是将字符串进行“反转”。再由类的定义可知,字符串存放在动态数组str中,由strlen函数得出字符串的长度,最后一个字符的下标为length-1,第一个字符的下标为0,将这两个字符交换,然后j依次减1同时i依次加1,继续交换,直到i大于j时停止循环即可。
转载请注明原文地址:https://kaotiyun.com/show/Y4Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于长度为n的线性表,若进行顺序查找,则时间复杂度为【】。
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thursday,Friday=2};则下列语句正确的是()。
下面关于对象的描述中正确的是()。
下列程序中画线处应填入的语句是classBase{public:voidfun(){cout<<"Baseoffun"<<end1:}};clas
下列程序的输出结果是【】。#include<iostream>usingnamespacestd;classbase{public:intn;base(ihtx){n=
在C++语言的面向对象程序设计框架中,【】是程序的基本组成单元。
软件开发离不开系统环境资源的支持,其中必要的测试数据属于
在软件生产过程中,需求信息的给出是
已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是
在学生管理的关系数据库中,存取一个学生信息的数据单位是()。
随机试题
术后恶心、呕吐的最常见原因为
A.ABPAB.弥漫性泛细支气管炎DPBC.支气管扩张D.慢性支气管炎E.肺结核男性,55岁。反复咳嗽,咳痰30年,多为脓痰,偶有咯血。近3天发热,痰偶为绿色。胸部CT,可见左肺中叶蜂窝样改变,囊腔中可见液平。最可能的诊断是
患者,中年女性。因劳累后心悸、气促而去医院就诊。体格检查示心尖区闻及舒张期滚筒样杂音;胸部正位摄片示心影呈梨形,中度增大。本例诊断最可能的诊断是
在借贷记账法下,账户的哪一方登记增加数,哪一方登记减少数,取决于()。
下列不属于仿效法特点的是()。
轴直径的一个n=5的样本观测值(单位:cm)为:15.09,15.29,15.15,15.07,15.21,则样本中位数为()。
WhenitcomestothePPPteachingmodeloforalEnglishclass,thesecondPrefersto________.
给定资料1.生活中,同一种类的电池可以在不同产品上使用,既可以用在电视遥控器上,也可以用在闹钟或手电筒上。按照既定的大小和形状生产出来的电池,不管是哪个厂家生产的都能使用,从而确保了同一种类的电池具有互换性。这种能够互换的特性就是标准化。在
Whenthesunstartedtoset,Jimheadedforhome.Hehadhuntedlongenough.Justthenhesawtherewas,30feetinfrontofh
A、clothes.B、age.C、physique.D、appearance.A
最新回复
(
0
)