计算机二级考试题库 操作题,2016计算机二级考试题库:《C++》基本操作题练习...

该博客主要涉及C++编程,特别是类`Pets`的实现。文章中指出在类的构造函数、析构函数以及赋值运算符中存在错误,并给出了修正后的代码。修复后的程序应能正确显示不同宠物的名称和类型,如狗和猫。修复点包括将成员变量`type`初始化,正确释放内存以及在赋值运算符中复制字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

69413f8fe192f68bbeb37bf14c1bf46d.png

二、基本操作题

41清使用VC6或使用【答题】菜单打开考生文件夹projl下的工程projl,此工程中包含了类Pets(“宠物”) 和主函数main的定义。程序中位于每个“//ERROR****found ****”之后的一行语句有错误,请加以改 正。改正后程序的输出结果应为:

Name:sonny Type:dog

Name:John Type:dog

Name:Danny Typc:cat

Name:John Type:dog

注意:只修改每个“//ERROR ****found ****”下的那一行,不要改动程序中的其他内容。

#include

using namespace sm; enum Pets_type{d09,cat,bird,fish};

class Pets{ private:

char *name; Pets_type type; public:

Pets(const char *name=”sonny”,Pets_type type=dog);

Pets&operator=(const Pets&s);

~Pets();

void show()eonst;};

Pets::Pets(eonst char$naIne,Pets_type type)

//构造函数 {

This ->name=new char[strlen(name)+1];

strcpy(this一>name,name);

//ERROR *********found********* type=type;

}{ Pets::~Pets()//析构函数,释放name所指向的字符串

{ //ERROR *********found********* name=’/0‘;

}

Pets&Pets::0perator=(const Pets&s){

if(&s==this)//确保不要向自身赋值 return *this;

delete[]name;

name=new char[strlen(S.name)+1];//ERROR *********found*********

strcpy(this一>nmne,name); type=S.type:

return *this;}

void Pets::show()const

cout<

参考解析:

(1)this一>type=type;

(2)delete[]name;

(3)strepy(this->name,s.name);

2829f2ca24f0d0090cbba57f30759f23.png

2016计算机二级考试题库:《C++》基本操作题练习.doc

下载Word文档到电脑,方便收藏和打印[全文共795字]

编辑推荐:

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

下载Word文档

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值