首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整;按要求完成下列操作,将类的定义补充完整。 (1)完成构造函数的定义,请在注释∥********1********后添加适当的语句。 (2)定义类的友元函数fun
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整;按要求完成下列操作,将类的定义补充完整。 (1)完成构造函数的定义,请在注释∥********1********后添加适当的语句。 (2)定义类的友元函数fun
admin
2020-06-29
92
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整;按要求完成下列操作,将类的定义补充完整。
(1)完成构造函数的定义,请在注释∥********1********后添加适当的语句。
(2)定义类的友元函数fun(),请在注释∥********2********后添加适当的语句。
(3)定义类的友元函数main(),请在注释∥********3********后添加适当的语句。
(4)补充语句,释放内存。请在注释∥********4********后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
Class TestClass
{
public:
∥********1********
{
data=d;
next=NULL;
}
void SetNext(TestClass*p)
{
next=p;
}
private:
int data;
TestClass*next;
∥********2********
∥********3********
};
TestClass*fun(TestClass*h)
{
TestClass *t,*s,*u,*v;
s=h一>next;
h一>next=NULL;
while(s!=NULL)
{
for(t=s,v=h; v!=NULL
&&V一>data
data;u=v,v=
V一>next);
s=s一>next;
if(v==h)
h=t;
else
u一>neXt=v;
t一>next=v:
}
return h;
}
void msin()
{
TestClass*h=NULL;
TestClass*q=NULL;
do{
int data;
cout<<“Please input a number,and end with 0”<
cin>>data;
if(data=0)brea k;
TestClass*p= new
TestClass(data);
if(h==NULL)
{
h=q=p;
}
else
{
q一>SetNext(p);
q=p;
}
}while(1);
h=fun(h);
for(;h!=NULL;)
{
q=h一>next;
cout<
data<<“”<
delete h;
∥********4********
}
return;
}
选项
答案
(1)添加语句:Testclass(int d) (2)添加语句: friend Testclas s*fun(TestClass*); (3)添加语句:friend void main(); (4)添加语句:h=q;
解析
本题的功能是将键盘输入的数字建立一个链表。在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类TestClass和函数fun实现各种输出操作。
转载请注明原文地址:https://www.kaotiyun.com/show/8O8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序段中包含4个函数。其中具有隐含this指针的是()。intfunl();classTest{public:intfura();friendintfun3();static
下列关于构造函数的描述中,错误的是()。
下面c++标识符中正确的是()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*cp的值是()。
开发大型软件时,产生困难的根本原因是()。
有以下程序:#includeusingnamespacestd;classTestClass{public:TestClass(intr1.intr2){R1=r1;
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,并且使程序输出的结果为:30130注意:错误的语句在//********error********的下面,修改该语句
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:151注意:.错误的语句在//********error********的下面,修改该语句即可。
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.cpp。函数char*GetNum(char*8re,char*buf)从src开始扫描下一个数字字符序列,并将其作为一个字符串取出放入字符串空
随机试题
(2012年第56题)甲状腺癌中,一般只从血行转移的是
关于阑尾黏液囊肿的说法错误的是
患者,女,40岁。双手近端指间关节痛2个月,晨僵,有时肿,伴不规则低热。体检面部及躯干有红斑或皮疹,双手近端指间关节有压痛,肿不明显,无畸形。X线检查无明显改变。血白细胞3.5×109/L,血小板72×109/L,尿蛋白30mg/dl,血沉32mm/第1小
颌顶位又称为
下列关于学习动机的激发手段表述正确的是()。
山东被称为“齐鲁之邦"或简称“鲁”,“鲁”字源于西周时期()的分封地鲁国。
在辞书的编纂过程中,存在所谓“共识”问题。因而做出完全相同的释义是可能的,但也是有限度的,绝不能用所谓的“共识”给自己的抄袭行为开脱。这段话支持了这样一种观点,即在辞书编纂过程中,()。
以下项目中,不应计人“营业外支出”科目的是()。
关于ARP表,以下描述中正确的是______。
YouwillhearaconversationbetweenMissGreen,aneducationaljournalist,andProfessorWilson,anexpertineducationalstudi
最新回复
(
0
)