首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成列操作,将类的定义补充完整,实现以下功能: (1)完成CBook类构造函数,对整型变量ID和作者Author进行赋值,请在注释∥********1******
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成列操作,将类的定义补充完整,实现以下功能: (1)完成CBook类构造函数,对整型变量ID和作者Author进行赋值,请在注释∥********1******
admin
2017-09-20
36
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成列操作,将类的定义补充完整,实现以下功能:
(1)完成CBook类构造函数,对整型变量ID和作者Author进行赋值,请在注释∥********1********后添加适当的语句。
(2)完成类CBooks的析构函数,释放申请的内存,请在注释∥********2********后添加适当的语句。
(3)完成类CBooks的AddBookMember函数,请在注释∥********3********后添加适当的语句。
(4)完成CBooks类,用于由书的ID检索到作者的函数char*GetBookAuthor(int nlD),请在注释∥********4********后添加适当的语句。
(5)程序的输出结果为:
Tom
Harry
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#include
Class CBook
{
public:
int ID;
char Author[32];
public:
CBook(int ID Number,char*Author Name)
{
thiS一>ID=ID Number;
∥********1********
}
};
C1ass CBooks
{
private:
Class NOde
{
public:
Node*next;
CBook*book;
}*m pBook;
public:
CBooks()
{
m pBook=NULL:
}
~CBooks()
{
∥********2********
while()
{
Node*P =m
pBook一>next;
delete m pBook
一>book;
delete m pBook;
m—pBook=P;
}
}
int AddBoo kMenber(int
nID,char*Author)
{
Node*p=m—pBook;
Node*q=NULL;
∥********3********
while()
{
if f nID==P一>
book一>ID)
{
return 0;
}
q=p;
P=p一>next;
}
if(P==NULL)
{
P=new Node;
P一>next=NULL;
P—>book= new
CBook(nID,Author);
}
if(q=NULL)
{
m pBook=P;
}
else
{
q一>next=p;
}
return 1;
}
char*GetBookAuthor(int nID)
{
Node*p=m pBook;
∥********4********
while()
{
if(P一>book一>ID==nID)
{
return P一>
book一>AUthor;
}
P=P一>next;
}
return 0;
}
};
int main()
{
CBooks booksl;
booksl.AddBookMenber (1,“Tom”);
books 1.AddBookMenber (3,“Lee”);
books 1.AddBookMenber (4,“Lily”);
bookS 1.AddBookMenber(5,“Harry”);
cout<
cout<
return 0;
}
选项
答案
(1) 添加语句: strcpy(Author,Author—Name); (2)将“while()”补充完整为:while(m—pBook!=NULL) (3)将“while()”补充完整为:while(P!:NULL) (4)将“while()”补充完整为:while(p!=NULL)
解析
程序当中定义了CBook类和CBooks类,CBook类描述书的基本信息,包含ID和Author数组两个成员变量,CBooks类描述由Node对象组成的链表,每个Node对象包含指向CBook对象的指针和下一个Node对象的指针。第一个Node对象的next指针指向第二个Node对象,同样第二个Node对象的next指针指向第三个Node对象,如此形成一个链表结构。成员函数AddBookMenber(int nlD,char*Author)实现向链表中添加一个Node节点,成员函数GetBookAuthor(int nID)返回某个Node节点的CBook对象的ID为nlD的CBook对象的Author数组名。
转载请注明原文地址:https://kaotiyun.com/show/ZTAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C++语言本身没有定义I/O操作,但I/O操作包含在C++实现中。C++标准库iostream提供了基本的I/O类。I/O操作分别由两个类istream和()提供。
对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为()。
有如下的类模板定义:template<typenameTYPE>classMyClass{TYPEn;public:MyClass(TYPEk);};其中构造函数MyClass用的值初始化
下面关于ios类的叙述中,正确的是()。
所有在函数中定义的变量及函数的形式参数,都属于
以下程序段共有错误()处。#include<iostream>usingnamespacesstd;classSample{private:intn;public:S
下列关于多态性的描述,错误的是
在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是
下列输出字符,A,的方法中,错误的是()
算法的复杂度主要包括时间复杂度和______复杂度。
随机试题
伦理学家:在通常情况下,不经患者同意就采取某种试验性的医疗措施是错误的,因为患者有权根据所有可供选择的详细医疗方案,接受或者拒绝某种治疗。但在紧急救治的情况下,有时候只有越过患者对试验性治疗的同意权,才能知道如何对紧急病人进行最好的医疗处置。因此,应当允许
下列哪些变化可以使组织液增多
甲亢性心脏病及其他型心脏病、老年禁做妊娠禁做
肾病综合征患儿最常见的并发症是
下列哪种药物易发生粘连
李某是某市商业报社的摄影记者。1998年,李某所在城市遭遇强台风,李某不顾自身危险,在台风期间上街抓拍了人们防灾、避灾,以及台风造成危害的数张照片。李某挑选了其中10张交给报社,由报社当日值班编辑陈某配写了题为“台风压境,人心不乱”文字稿,作为摄影专题报道
在土地利用总体规划确定的城市建设用地范围外单独选址的建设项目使用土地的,建设单位应当向土地所在地的市、县人民政府土地行政主管部门提出用地申请。建设单位提出用地申请时,应当填写()。
教师在教学过程中,对正在进行的教学活动进行不断的自我认识和反思能力是()。
A、 B、 C、 D、 C
设平面区域σ由σ1与σ2组成,其中,σ1={(x,y)|0≤y≤a-x,0≤x≤a),σ2={(x,y)|a≤x+y≤b,x≥0,y≥0),如图1.6-1所示,它的面密度试求薄片σ1关于y轴的转动惯量J1与σ2关于原点的转动惯量J0
最新回复
(
0
)