首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,阅读下列程序说明和代码,功能如下: 从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,然后把数据打印到屏幕,然后释放内存。 其中定义的类并不完整,按
使用VC6打开考生文件夹下的源程序文件modi3.cpp,阅读下列程序说明和代码,功能如下: 从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,然后把数据打印到屏幕,然后释放内存。 其中定义的类并不完整,按
admin
2018-10-23
43
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,阅读下列程序说明和代码,功能如下:
从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,然后把数据打印到屏幕,然后释放内存。
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)在父节点的Next中保存新插入的节点的指针,请在注释//********1********后添加适当的语句。
(2)把pNext的子节点赋给pNext本身,请在注释//********2********后添加适当的语句。
(3)判定p的子节点不为空,如果不为空,则打印p其中的数据到屏幕,请在注释//********3********后添加适当的语句。
(4)用temp1保存动态申请内存节点的链表头,请在注释//********4********后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主
函数main与其他函数中的任何内容。
1 #include<iostream.h>
2 class TestClass
3 {
4 public:
5 TestClass(int data=0)
6 {
7 this->data=data;
8 this->next=NULL;
9 };
10 int data;
11 TestClass* next;
12 };
13 void Insert(TestClass*p,int data)
14 {
15 TestClass*temp=new TestClass(data);
16 TestClass*pParent=p;
17 TestClass*pNext=p->next;
18 while(pNext)
19 {
20 if(data>pNext->data)
21 {
22 //********1********
23
24 temp->next=pNext;
25 return;
26 }
27 Else
28 {
29 pParent=pNext;
30 //********2********
31 }
32
33 }
34 if(pNext==NULL)
35 {
36 pParent->next=temp;
37 return;
38 }
39 }
40 void printf(TestClass *p)
41 {
42 //********3********
43 while()
44 {
45 cout<<p->next->data<<’’’’;
46 p=p->next;
47 }
48 cout<<end1;
49 }
50 void Delete(TestClass* p)
51 {
52 //********4********
53 TestClass* temp1=;
54 TestClass* temp2;
55 while(temp1!=NULL)
56 {
57 temp2=temp1->next;
58 delete temp1;
59 temp1=temp2;
60 }
61 }
62 void main()
63 {
64 int i=0;
65 TestClass head;
66 do
67 {
68 int data;
69 cout<<’’请输入一个数字:’’<<end1;
70 cin>>data;
71 if(data=0)break;
72 Insert(&head,data);
73 } while(1);
74 printf(&head);
75 Delete(&head);
76 return;
77 }
选项
答案
(1)添加语句:pParent->next=temp; (2)添加语句:pNext=pNext->next; (3)将“while()”补充完整为:while(p->next!=NULL) (4)将“TestClass*temp1=;”补充完整为:TestClass*temp1=p->next;
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的main主函数开始入手,可以看出程序通过调用类TestClass实现各种输出操作。
(1)题目1要求“在父节点的Next中保存新插入的节点的指针”。对于指针的操作pParent->next为pParent的子结点,在父节点的Next中保存新插入的节点的指针,即“pParent->next=temp;”。
(2)题目2要求“把pNext的子节点赋给pNext本身”。pNext->next为pNext的子结点,把pNext的子节点赋给pNext本身,即“pNext=pNext->next;”。
(3)注释//********3********下是判定p的子节点不为空。p的子节点是p->next。程序中的“while()”缺乏p的子节点不为空的判断条件,所以修改为“while(p->next!=NULL)”。
(4)题目4要求“用temp1保存动态申请内存节点的链表头”。p为链表,p->next为链表头。程序中的语句“TestClass*temp1=;”中temp1没有被赋值,所以修改为“TestClass*temp1=p->next;”。
转载请注明原文地址:https://kaotiyun.com/show/a5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有关构造函数的叙述不正确的是
下列有关数据库的描述,正确的是
在面向对象方法中,类之间共享属性和操作的机制称为______。
有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>C)cout<<d<<end1;elseif((c-1)=d)==1)tout<<d+1<<endl;elsecou
函数swap(a,n)可完成对a数组从第1个元素到第n个元素两两交换。其中b[=1;b[1]=2;swap(b,2)。在运行调用函数中的语句后,b[0]和b[1]的值分别为()。
关系模型允许定义3类数据约束,下列不属于数据约束的是()。
下列有关数据库的叙述,正确的是()。
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classD
请将下列类定义补充完整。classBase{public:voidfun(){cout<<"Base∷fun"<<end1;}};c1assDehVed:publicBase{public:
随机试题
甲在国外旅游,见有人兜售高仿真人民币,用1万元换取10万元假币,将假币夹在书中寄回国内。(事实一)赵氏调味品公司欲设加盟店,销售具有注册商标的赵氏调味品,派员工赵某物色合作者。甲知道自己不符加盟条件,仍找到赵某送其2万元真币和10万元假币,请其帮忙
某单线铁路长180km,横穿华中山地、丘陵和冲积平原地带,其中山地25km,植被以中亚热带常绿阔叶林为主,植被茂密,丘陵地带79km沿途穿越京杭大运河等大小河流7条。其中穿越的小城镇有15个,在铁路沿线两侧500m内有居民14602人,在铁路两侧200m
建筑装饰材料中,装饰在建筑物外墙壁上能起到隔声、隔热作用的材料是()。
设备基础验收,主要检查验收其()是否符合设计要求。
ABC公司甲产品经两道工序加工,采用约当产量比例法分配各项生产费用。2010年4月份,甲产品生产完工1000件,本月投产900件。月初在产品数量为:第一道工序600件,第二道工序600件。月末在产品数量为:第一道工序700件,第二道工序400件。其他有关资
在我国,党的领导、人民当家做主和依法治国是有机统一的。在重大问题的决策和实施程序中,下列过程正确的是()。
2017年4月26日,首艘国产航母下水,我国国防科技水平再获飞跃,海军战斗力大跨越的脚步行将落地,打胜仗的底气进一步积蓄。下列关于我国建造航母的原因的分析,说法不当的是()。
一般人在20岁后()的发展达到顶峰,30岁以后随年龄的增长而降低。
设A,B是两个随机事件,P(A|B)=0.4,P(B|A)=0.4,=0.7,则P(A+B)=__________。
关系数据库设计理论所包括的三个方面内容中,()起着核心的作用。
最新回复
(
0
)