首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.clap,其中定义了用于表示学生学号的类CStudcntlD,但类CStudentID的定义并不完整。 运行结果为: 学生的学号为:200805 学生名为:李伟 删除学生学号
使用VC6打开考生文件夹下的源程序文件modi3.clap,其中定义了用于表示学生学号的类CStudcntlD,但类CStudentID的定义并不完整。 运行结果为: 学生的学号为:200805 学生名为:李伟 删除学生学号
admin
2019-06-05
66
问题
使用VC6打开考生文件夹下的源程序文件modi3.clap,其中定义了用于表示学生学号的类CStudcntlD,但类CStudentID的定义并不完整。
运行结果为:
学生的学号为:200805
学生名为:李伟
删除学生学号为:200805
请按要求完成下列操作,将类CStudentlD的定义补充完成:
(1)定义class CStudentlD类的私有数据成员IDvalue表示学生的学号,为long型的数据。请在注释//********1********之后添加适当的语句。
(2)完成默认构造函数CSmdentlD的定义,使CStudentlD对象的默认值为:id=0,并把学生的学号赋给IDvalue,并输出“赋给学生的学号:”及学号。请在注释//********2********之后添加适当的语句。
(3)完成默认析构函数CStudentlD的定义,使CStudentlD析构时输出“删除学号:”及学号。请在注释//********3********之后添加适当的语句。
(4)完成默认构造函数CStudentlnfo的定义。对应两个默认参数:要求定义char stName[],其默认值为“no name”,定义long stID,其默认值设为0,并使它们赋值给相应的类数据成员。请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include<iostream.h>
2 #include<string.h>
3 class CStudentID
4 {
5 //********1********定义私有数据成员
6
7 public:
8 //********2********定义默认构造函数
9
10 {
11 IDvalue=id;
12 cout<<’’学生的学号为:’’<<IDValue<<end1;
13 }
14 //********3********定义析构函数
15
16 {
17 cout<<’’删除学生学号为:’’<<IDvalue<<end1;
18 }
19 };
20 class CStudentInfo
21 {
22 private:
23 CStudentID id;
24 char name[20];
25 public:
26 //********4********定义默认构造函数完成数据成员初始化
27
28 {
29 cout<<’’学生名为:’’<<stName<<end1;
30 strcpy(name,stName);
31 }
32 };
33 void main()
34 {
35 CStudentInfost(’’李伟’’,200805);
36 }
选项
答案
(1)添加语句:long IDvalue; (2)添加语句:CStudentID(lonq id=0) (3)添加语句:~CStudentID() (4)添加语句:CStudentInfo (char stName[]=’’no name’’,longstID=0):id(stID)
解析
程序中定义了两个类CStudentID和CStudentInfo,其中类CStudentID包含学生的学号信息的成员变量,有自定义构造函数和默认析构函数,而类CStudentlnfo不仅包含学生的学号还包括对应的姓名信息的成员变量,还实现了自定义构造函数。
(1)第1个标识下完成CStudentID类的私有数据成员IDvalue的定义,为long型的数据,因此第1个标识下应添加“long IDvalue;”。
(2)构造函数完成类成员变量的初始化,构造函数名和类名一致,该构造函数带有一个参数id,其默认值为id=0,因此第2个标识下应添加“CStudentIPD(long id=0)”。
(3)析构函数也和类名一致,并且在前面加“~”以和构造函数区分,析构函数没有参数,故第3个标识下应添加“~CStudentID()”。
(4)CStudentInfo包含的学生学号信息保存在类CStudentID的实例中,可通过调用类CStudentID的自定义构造函数初始化,第4个标识下应添加“CStudentlnfo(char stName[]=’’no name",long stID=0):id(stID)”。
转载请注明原文地址:https://jikaoti.com/ti/7qA0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面关于函数模板的表述中不正确的是()。A)类模板的成员函数都是模板函数B)类模板本身在编译过程中不会产生任何代码C)类模板只能有虚拟类型的参数D)用类模板定义一个对象时,实参不能省略
下面关于虚函数的描述中,正确的是()。A)基类中利用virtual关键字说明一个虚函数后,其派生类中定义相同的原型函数时可不必加virtual来说明B)虚函数是非成员函数C)虚函数是static类型的成员函数D)派生类中的虚函数与基
下列程序执行后,输出的结果是()。intx=-5,y=0;while(++x)y++;cout<<y<<end1;A)1B)2C)4D)5
以下函数模板min的功能是返回数组a中最小元素的值。请将横线处缺失部分补充完整。template<typenameT>Tmin(Ta[],intn){Ttemp=a[0];for(inti=1,i<n;i
对软件设计的最小单位(模块或程序单元)进行的测试通常称为______测试。
定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。A)-369B)369C)0.369D)整数集合{1,2,3,4,5}
结构化程序所要求的基本结构不包括()。A)顺序结构B)GOTO跳转C)选择(分支)结构D)重复(循环)结构
已知类Myclass的定义如下classMyClass{public:voidfunction1(MyClass&C){cout<<c.data;)staticvoidfunction2(MyClass&C)
在对函数进行原型声明时,下列语法成分中,不需要的是()。A)函数返回类型B)函数参数列表C)函数名D)函数体
假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为
随机试题
在工艺管道及仪表流程图中,管道上的阀门是用粗实线按标准规定的图形符号在相应处画出。
生产方式、组织方式、生活方式等,属于哪种文化现象()
肺源性心脏病的首要死亡原因是()。
男性,55岁。反复发作性咳喘10余年,每逢秋冬多发。近年来缓解期登二楼亦感气急。体检:静息气平,无发绀。两肺呼吸音普遍降低,闻及散在干啰音。评价气道阻塞可逆性的试验应是
男性,35岁,因低热、乏力和呼吸极度困难来门诊。医生怀疑心脏压塞。协助诊断最有意义的是
男性,29岁。患非淋球菌性尿道炎半个月,排尿不爽、淋漓不尽、热涩刺痛、尿道口红而分泌物多,小腹拘急,舌红苔黄,脉弦滑。治疗应首选
X-连锁隐性遗传病是指致病基因位于X染色体上,且隐性方式遗传的疾病,如假性肥大肌营养不良症(DMD)。下列关于DMD的描述,正确的有()。
计提本月固定资产折旧12000元,其中:生产车间使用的固定资产折旧为9000元,企业管理部门使用的为3000元,则涉及的科目有()。
某磁盘盘组共有10个盘面,每个盘面上有100个磁道,每个磁道有32个扇区,假定物理块的大小为2个扇区,分配以物理块为单位。若使用位图(bitmap)管理磁盘空间,则位图需要占用(49)字节空间。若采用空白文件管理磁盘空间,且空白文件目录的每个表项占用5个字
用Outlook2010编辑电子邮件:收信地址:mail4test@163.corn主题:OSPF路由协议的基本特征将Tesfle.txt作为附件粘贴到信件中。信件正文如下:您好!信件附件是有关OSPF路由协议的基本
最新回复
(
0
)