首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输
admin
2020-06-29
77
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输出链表上各表元的整数值。主函数每读入一个整数,就调用函数fun(),函数fun()将还未出现在链表上的整数按从大到小的顺序插入到链表中。为了插入方便,链表在表首有一个辅助表元。
注意:不能修改程序的其他部分,只能修改fun()函数。
#include
class NODE
{
public:
int data;
NODE*next;
};
void fun(NODE*list,int x)
{
}
void main()
{
int X;
NODE*head,*P;
/*首先建立只有辅助表元的空链表*/
head=new NODE;
head->next=NULL;
std::cout<<“Enter integers,
end with 0”<
while(1)
{
std::cin>>x;
if(x==0)
break;
fun(head,x);
}
for(p=head一>next; P!=NULL;
p=p一>next)
std::cout<
data<<’’;
std::cout<
do {
P=head一>next;
delete head ;
head=P ;
}while(p);
}
选项
答案
NODE *u,*v,*p; u=list; V=u一>next; while(v!=NULL,&&x
data) //寻找插入的位置 { U=V; V=V一>next; } if(V==NULL-‖ x>v一>data) //判断是否为新的元素 { p=new NODE; p一>data=x; //生成新的元素 p一>next=v; u一>next=p; //插入新的元素 }
解析
(1)该程序功能是构造一个以大到小顺序链接的链表。它的解题思路,首先寻找插入的位置,然后判断是否为新元素,最后插入。
(2)从己给部分源程序的main主函数开始入手,核心函数void fun(NODE*list,int x)中的list参数为单链表,x为要插入的数据。
【解题思路】
(1)首先利用while循环寻找插入元素的位置。
(2)然后判断要插入的元素是否为新元素。
(3)如果为新元素,那么执行单链表的操作,插入元素。
转载请注明原文地址:https://kaotiyun.com/show/FK8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classTestClass{public:TestClass(){cout
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整,使得程序输出21到屏幕。完成以下功能:(1)增加静态私有变量mNumber,类型为int,请在注释//********1**
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priAl和priA2,其中priAl类由baseA类公有派生,priA2类由priAl类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:Hello注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//*******
对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是( )。
数据库设计中反映用户对数据要求的模式是( )。
堆排序最坏情况下的时间复杂度为
使用VC6打开考生文件夹下的源程序文件modi2.epp。阅读下列函数说明和代码,实现函数sort(intA[],intn),用选择排序法把数组从大到小排序。提示:选择排序法的思想是:(1)反复从还未排好的那部分线性表中选择出关键字最小的节点;
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数func(intd[],intn)的功能是将长度为num的数组d的每一个数字是奇数的扩大l倍,并存储到数组d中。例如:123456789
随机试题
我国《公司法》所确认的公司主要有()
Thetwopartieshave______anagreementonthedateoftalk.
男性,20岁,周身水肿半个月近日来出现呼吸困难,少尿。检查:BP170/120mmHg,全身高度水肿,并伴有右侧胸腔及腹腔积液,在外院诊断肾病综合征。泼尼松减量的标准是什么
患者,男性,30岁。右下智牙近中位阻生,反复发生冠周炎,现无明显症状要求拔除。右下第二磨牙远中探诊可疑龋坏。出现拔除右下阻生智牙3天后,拔牙窝出现持续性疼痛并向耳颞部放散,检查见拔牙窝内空虚相应的治疗应为()
A、成型材料B、增塑剂C、遮光剂D、防腐剂E、增稠剂二氧化钛在空胶囊组成中作为
净现值法与现值指数法的共同之处在于()。
()是我国社会主义社会的重要特征,并为社会主义现代化建设提供了强大的精神动力、智力支持和思想保证。
以下选项中,不合法的VisualBasic的变量名是()。
A、ThistypeofTVisproducedlately.B、TheconversationtakesplaceatacompanywhichproducesTVsets.C、TheTVsetisexpens
Accordingtothewriter,thetopkillersinChinaare______.______wasthetoppreventablecontributingfactortothedeaths.
最新回复
(
0
)