首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示个人基本信息的类PInfo,但类Plnfo的定义并不完整。请按要求完成下列操作,将类Plnfo的定义补充完成: (1)定义私有数据成员bloodType用于表示血型,血型为
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示个人基本信息的类PInfo,但类Plnfo的定义并不完整。请按要求完成下列操作,将类Plnfo的定义补充完成: (1)定义私有数据成员bloodType用于表示血型,血型为
admin
2013-11-15
65
问题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示个人基本信息的类PInfo,但类Plnfo的定义并不完整。请按要求完成下列操作,将类Plnfo的定义补充完成:
(1)定义私有数据成员bloodType用于表示血型,血型为char型的数据。请在注释1之后添加适当的语句。
(2)完成构造函数的定义,要求具有默认值,默认值为身高175,体重70,血型A。请在注释2之后添加适当的语句。
(3)完成类Pinfo外成员函数Setlnfo的定义。请在注释3之后添加适当的语句。
(4)在主函数中调用成员函数Setlnfo,把对象d2的3个私有数据成员分别设定为身高170,体重64,血型B。请在注释4之后添加适当的语句。 ‘
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
试题程序:
#include
class Plnfo
{
private:
int height;
int weight;
//********1********
public:
//********2********
:height(ht),weight(Wt),bloodType(bt){};
PInfo(PInfo&h1):height(h1.height),
weight(h1.weight),bloodType(h1.bloodType){}
int GetHeight()
{
return height;
}
int GetWeight()
{
return weight;
}
int GetBloodType()
{
return bloodType;
}
void Setlnfo(int ht,int wt,char bt);
void Display();
};
//********3********
{
height=ht;
weight=wt:
bloodType=bt;
}
void Plnfo::Display()
{
tout<<"Humanlnfo:";
eout"height<<"cm,"<
"<
}
void main()
{
PInfo h1(169,61,’A’);
Plnfo h2;
Plnfo h3(h1);
Plnfo h4(h2);
//********4********
h1.Display();
h2.Display();
h3.Display();
h4.Display();
}
选项
答案
(1)应添加“char bloodType;”。 (2)应添加“Plnfo(int ht=175,int wt=70,char bt=’A’)”。 (3)应添加“void Plnfo::Setlnfo(int ht,int wt,char bt)”。 (4)应添加“h2.Setlnfo(170,64,’B’);”。
解析
本题第1处定义私有数据成员为char型的bloodType,故第1处应添加“char hloodType;”。构造PInfo()完成3个成员的初始化,并且带有默认值参数,默认值为身高175,体重70,血型A,由函数体语句可知参数名分别为ht、wt和bt,因此第2处应添加“Plnfo(int ht=175,int wt=70,char bt=’A’)”。第3处的语句在类外完成成员函数SetInfo的定义,在类外定义成员函数的格式为“(返回值类型)<类名>::<成员函数>(<参数表>)”,故第3处应添加“void PInfo::SetInfo(intht,int wt,char bt)”。调用函数Setlnfo需要3个参数,程序要求把对象d2的3个私有数据成员分别设定为身高170,体重64,血型为B,即把这3个值传入函数Setlnfo,因此第4处应添加“h2.SetInfo(170,64,’B’);”。
转载请注明原文地址:https://kaotiyun.com/show/dHNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列有关析构函数的说法错误的是()。
以下程序的执行结果是【】。#include<iostream.h>classB{public:B(){}B(inti.intj);voidprintb();private:inta,b;};classA{pub
下列对于虚函数和重载函数的叙述,正确的是()。
在下面叙述中,不正确的是()。
下面运算符不能被友元函数重载的是()。
下列运算符中,()运算符在C++中不能重载。
下面有关重载函数的描述中正确的是()。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的【】。
下列语句中,错误的是()。
下列关于类和对象的叙述中,错误的是()。
随机试题
试述质量体系的建立与运行。
有关右心室的叙述,错误的是
证券公司从事证券资产管理业务,接受一个客户的单笔委托资产价值低于规定的最低限额;投资范围或者投资比例违反规定的,责令改正,给予警告,没收违法所得,并处以违法所得()的罚款。
()是指新建房屋申请人,或原有但未进行过登记的房屋申请人,原始取得所有权而进行的登记。
躁狂症“三高症状”包括()。(2003年8月三级真题)
初中“平面直角坐标系”(第一节课)设定的教学目标如下:①了解有序数对的概念,体会有序数对在现实生活中应用的广泛性;②通过实例让学生认识有序数对,感受有序数对在确定点的位置中的作用。完成下列任务:本节课的教学内容对后续哪些内容的学习有直接影响?
公安机关有(),这些手段能否正确运用,直接关系到国家、社会和人民的利益。
下列情形不能办理预告登记的事项是()。
设f(x)=(akcoskx+bksinkx),其中ak,bk(k=1,2,…,n)为常数.证明:(I)f(x)在[0,2π)必有两个相异的零点;(Ⅱ)f(m)(x)在[0,2π)也必有两个相异的零点.
Willyoucometoseemeifit______onSunday?
最新回复
(
0
)