首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,阅读下列程序说明和代码,功能如下: 从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,把数据打印到屏幕,并释放内存。 其中定义的类不完整,按要求完成
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,阅读下列程序说明和代码,功能如下: 从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,把数据打印到屏幕,并释放内存。 其中定义的类不完整,按要求完成
admin
2020-06-29
43
问题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,阅读下列程序说明和代码,功能如下:
从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,把数据打印到屏幕,并释放内存。
其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。
(1)在父结点的Next中保存新插入的结点的指针,请在注释1后添加适当的语句。
(2)把pNext的子结点赋给pNext本身,请在注释2后添加适当的语句。
(3)判定p的子结点不为空,如果不为空,则打印p中的数据到屏幕,请在注释3后添加适当的语句。
(4)用t1保存动态申请内存结点的链表头,请在注释4后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
试题程序:
#include
class TC
{
public:
TC(int data=0)
{
this->data=data;
this->next=NULL;
}
int data:
TC*next:
};
void Insert(TC*p,int data)
{
TC*temp=new TC(data);
TC*pParent=p;
TC*pNext=p->next;
while(pNext)
{
if(data)pNext->data)
{
//* * * * * * * * 1 * * * * * * * *
temp->next=pNext:
return:
}
else
{
pParent=pNext:
//* * * * * * * * 2 * * * * * * * *
}
}
if(pNext==NULL)
{
pParent->next=temp;
return:
}
}
void printf(TC*p)
{
//* * * * * * * * 3 * * * * * * * *
while()
{
cout<
p=p->next;
}
cout<end1;
}
void Delete(TC*p)
{
//* * * * * * * * 4 * * * * * * * *
TC*t1=;
TC*t2;
while(t1! =NULL)
{
t2=t1->next;
delete t1;
t1=t2:
}
}
void main()
{
int i=0;
TC head;
do
{
int data;
cout<<"请输入一个数字:"<
cin>>data;
if(data==0)break;
Insert(&head,data);
}while(1);
printf(&head);
Delete(&head);
return;
}
}
选项
答案
(1)应添加“pParent->next=temp;”。 (2)应添加“pNext=pNext->next;”。 (3)将“while()”补充完整为“while(p->next!=NULL)”。 (4)将“TC*t1=;”补充完整为“TC*t1=p->next;”。
解析
本题第1处要求“在父结点的Next中保存新插入的结点的指针”。对于指针的操作,pParent->next为pParent的子结点,在父结点的Next中保存新插入的结点的指针,即“pParent->next=temp;”。
第2处要求“把pNext的子结点赋给pNext本身”。pNext->next为pNext的子结点,把pNext的子结点赋给pNext本身,即“pNext=pNext->next;”。注释3下是判定p的子结点不为空。p的子结点是p->next。程序中的“while()”缺乏p的子结点不为空的判断条件,所以修改为“while(p->next!=NULL)”。
第4处要求“用t1保存动态申请内存结点的链表头”。p为链表,p->next为链表头。程序中的语句“TC*t1=:”中t1沿有被赋值,所以修改为“TC*t1=p->next;”
转载请注明原文地址:https://kaotiyun.com/show/1byp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正错误,使得程序输出:Hellotest注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在∥********error***
用VC6打开考生文件夹下的源程序文件modi3.cpp,这个程序完成输出到屏幕一些特定的信息,但工程有错误或者不完整,请完成以下功能:(1)初始化mNum2的值为i,请在注释∥*******1********后添加适当的语句。(2)补充全局函数ran
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:m=-10n=-10p=0q=一10z=A注意:错误的语句在//“∥*****
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果为:Maxis7提示:max()函数实现找出两个数中的最大值,并作为函数值返回。注意:错误的语句在∥********e
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int*arr,intn)的功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。并返回互不相同的元素的个数
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,即使程序在界面输出以下类似内容:0012FF6810012FF3C50012FF6C20012FF444
下列有关类继承的叙述中,错误的是()。
下列符号中能够作为C++标识符的是()。
字面常量42、4.2、42L的数据类型分别是()。
数据库设计中反映用户对数据要求的模式是( )。
随机试题
我国近现代教育史中,特别把美育提出来,将体、智、德、美四育并列的人是()
患者男性,61岁,高血压多年,一周前腹泻,四天前便血伴腹胀乏力,腹部平片示多个弓形小肠袢影,结肠充气。以“下消化道出血、不全肠梗阻”入院,超声示右下腹腔肠管粘连,肠壁增厚,明显水肿,肠壁血运明显减少,肠间少量积液。最可能的诊断是
A.应当具备执业药师资格B.应当具有药学或者医学、生物、化学等相关专业学历或者具有药学专业技术职称C.应当具有中药学中专以上学历或者具有中药学专业初级以上专业技术职称D.应当具有高中以上文化程度或者符合省级药品监督管理部门规定的条件药品零售企业质
如果卡诺热机的循环曲线所包围的面积从题27图中的abcda增大为ab’c’da,那么循环abcda与ab’c’da所作的净功和热机效率变化情况是()。
对所有者权益账户,下列提法中不正确的是()。
我国A厂到缅甸考察投资项目时发现,渔业资源是缅甸出口创汇的主要资源,但缅甸工业发展落后,为了海产品的保鲜和运输,缅甸每年需要从国外进口大批的聚乙烯泡沫箱。该厂对市场进行调查后发现,由于聚乙烯泡沫箱体积大,因而尽管其份量轻,但运输成本却很大。一个聚乙烯泡沫箱
培养和形成良好的校风,关键在于()
员工:经理
汉字作为典型的表意文字,虽然其象形部分目前已不占重要地位,古主导地位的造字方式是形声字,但汉字形声字的形符仍然具有表意功能。形符的作用除了和声符结合成字外。就是显示字义的性质和类属,或表示与字有关联的事物与现象。下列对这段话的理解,正确的一项是:
•Readthearticleaboutmanagementbuyoutsofcompanies.•Choosethebestsentencefrombelowtofillineachofthegaps.•F
最新回复
(
0
)