首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示学生学号的类CStudentlD,但类CStudentlD的定义并不完整。 运行结果为: 学生的学号为:200805 学生名为:李伟 删除学生学号为:200
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示学生学号的类CStudentlD,但类CStudentlD的定义并不完整。 运行结果为: 学生的学号为:200805 学生名为:李伟 删除学生学号为:200
admin
2020-05-14
48
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示学生学号的类CStudentlD,但类CStudentlD的定义并不完整。
运行结果为:
学生的学号为:200805
学生名为:李伟
删除学生学号为:200805
请按要求完成下列操作,将类CStudentID的定义补充完成:
(1)定义class CStudentID类的私有数据成员IDvalue表示学生的学号,为long型的数据。请在注释//********1********之后添加适当的语句。
(2)完成默认构造函数CStudentlD的定义,使CStudentID对象的默认值为:id=0,并把学生的学号赋给IDvalue,并输出“赋给学生的学号:”及学号。请在注释//********2********之后添加适当的语句。
(3)完成默认析构函数CStudentlD的定义,使CStudentID析构时输出“删除学号:”及学号。请在注释//********3********之后添加适当的语句。
(4)完成默认构造函数CStudentlnfo的定义。对应两个默认参数:要求定义char stName[],其默认值为“no name”,定义long stID,其默认值设为0,并使它们赋值给相应的类数据成员。请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include
2 #include
3 C1ass CStudentID
4 {
5 //********1********定义私有数据成员
6
7 public:
8 //********2********定义默认构造函数
9
10 {
11 IDvalue=id;
12 cout<<"学生的学号为: "<
13 }
14 //********3********定义析构函数
15
16 {
17 cout<<"删除学生学号为:
"<
18 }
19 };
20 class CStudentInfo
21 {
22 private:
23 CStudentID id;
24 char name[20];
25 public:
26 //********4********定义默认构造函数完成数据成员初始化
27
28 {
29 cout<<"学生名为:"<
30 strcpy(name,stName);
31 }
32 };
33 void mein()
34 {
35 CStudentInfo st("李伟",200805);
36 }
选项
答案
(1)添加语句:long IDvalue; (2)添加语句:CStudentID(10ng id=0) (3)添加语句:~CStudentID() (4)添加语句:CStudentInfo(char stName[]="no name",long stID=O):id(stID)
解析
程序中定义了两个类CStudentID和CStudentlnfo,其中类CStudentID包含学生的学号信息的成员变量,有自定义构造函数和默认析构函数,而类CStudentlnfo不仅包含学生的学号还包括对应的姓名信息的成员变量,还实现了自定义构造函数。
[解题思路]
(1)第1个标识下完成CStudentID类的私有数据成员IDvalue的定义,为long型的数据,因此第1个标识下应添加“long I:Dvalue;”。
(2)构造函数完成类成员变量的初始化,构造函数名和类名一致,该构造函数带有一个参数id,其默认值为id=0,因此第2个标识下应添加“CStudentlD(10ng。id=0)”。
(3)析构函数也和类名一致,并且在前面加“~”以和构造函数区分,析构函数没有参数,故第3个标识下应添加“~CStudentID()”。
(4)CStudentlnfo包含的学生学号信息保存在类CStudentID的实例中,可通过调用类CSmdentlD的自定义构造函数初始化,第4个标识下应添加“CStudentlnfo(charstName[]=”no name",long stID=0):id(stlD)”。
转载请注明原文地址:https://kaotiyun.com/show/Ig8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;longfun(intn){if(n>2)return(fun(n-1)+fun(n-2));return
假定MyClass为一个类,则执行MyClassa,b(2),*p;语句时,自动调用该类构造函数()次。
下面程序的结果是______。#include<iostream.h>classA{public:virtualvoidfun()=0{};};classB:publicA{
一个关系表的行称为【】。
有如下程序: #include<iostream> using namespace std; class Sample{ public: Sample()<) ~Sample(){cout<<’*’;
类模板template<classT>classx{...},其中,友元函数f对特定类型T(如int),使函数f(x<int>);成为x<int>模板类的友元,则其说明为()。
如下程序声明了一个使用两个通用数据类型的模板类dataClass,其中构造函数用于初始化两个数据成员,成员函数show用于输出两个数据成员的数值。#include<iostream>usingnamespaeestd;_
长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为______。
下图所示的二叉树的先序遍历序列是【】。
下列关于运算符重载的表述中,错误的是
随机试题
南朝民歌《西洲曲》中运用的修辞手法有()
A、术前清洁肠道给予20%甘露醇250ml顿服B、术前禁食、禁药、给予哌替啶肌肉注射达到止痛目的C、术前只需禁食、禁药D、术前晚上服用泻剂,给予番泻叶以清洁肠道E、术前无需禁食、禁药、禁水以上唧项属于肠息肉切除术的术前准备()
关于大脑半球的描述,正确的是
患者女性,45岁。因急性胆囊炎入院,给予抗感染、对症支持治疗,今晨输液后半小时出现发冷、寒战和发热,测体温38.5℃。以下措施不妥的是
小导管是受力杆件,因此两排小导管在纵向应有一定搭接长度,钢管沿隧道纵向的搭接长度一般不小于()。
企业期初存货计价如果过低,会使得当期收益()。
在私募基金管理人登记、基金备案中提供虚假材料和信息的,中国证券投资基金业协会可以采取的处罚措施有()。Ⅰ.行业内通报批评Ⅱ.罚款Ⅲ.暂停受理基金备案Ⅳ.取消会员资格
设在名称为MyForm的窗体上只有1个名称为C1的命令按钮,下面叙述正确的是
在以下程序段中,已知血型数据占两个字节,则输出结果是unionun{inti;doubley;}structst{chara[10];unionunb;};
Shortsightcanbe______bytheuseofsuitableglasses.
最新回复
(
0
)