首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输
admin
2019-05-29
84
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输出链表上各表元的整数值。主函数每读入一个整数,就调用函数fun(),函数fun()将还未出现在链表上的整数按从大到小的顺序插入到链表中。为了插入方便,链表在表首有一个辅助表元。
注意:不能修改程序的其他部分,只能修改如fun()函数。
1 #include<iostream>
2 class NODE
3 {
4 public:
5 int data;
6 NODE *next;
7 };
8 void fun(NODE*list,int x)
9 {
10
11 }
12 void main()
13 {
14 int x;
15 NODE*head,*p;
16 /*首先建立只有辅助袁元的空链表*/
17 head=new NODE;
18 head->next=NULL;
19 std::cout<<’’Enter integers,end with 0’’<<std::end1;
20 while(1)
21 {
22 std::cin>>x;
23 if(x==0)
24 break;
25 fun(head,x);
26 }
27 for(p=head->next;p!=NULL;p=p->next)
28 std::cout<<p->data<<’ ’;
29 std::cout<<std::end1;
30 do {
31 p=head->next;
32 delete head;
33 head=p;
34 } while(p);
35 }
选项
答案
1 NODE *u,*v,*p; 2 u=list; 3 v=u->next; 4 while(v!=NULL&&x<v->data) //寻找插入的位置 5 { 6 u=v;v=v->next; 7 } 8 if(v==NULL || x>v->data) //判断是否为新的元素 9 { 10 p=new NODE; 11 p->data=x; //生成新的元素 12 p->next=v; 13 u->next=p; //插入新的元素 14 }
解析
(1)该程序功能是构造一个以大到小顺序链接的链表。它的解题思路,首先寻找插入的位置,然后判断是否为新元素,最后插入。
(2)从已给部分源程序的main主函数开始入手,核心函数void fun(NODE*list,int x)中的list参数为单链表,x为要插入的数据。
(3)首先利用while循环寻找插入元素的位置。
(4)然后判断要插入的元素是否为新元素。。
(5)如果为新元素,那么执行单链表的操作,插入元素。
转载请注明原文地址:https://kaotiyun.com/show/3B8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
A、 B、 C、 D、 D此题考查的是派生类的构造函数和析构函数。在撤销派生类对象时,析构函数的执行过程和构造函数严格相反,即:对派生类新增普通成员进行清理;调用成员对象析构函数,调用基类析构函数对基类进行清
A、 B、 C、 D、 B此题考查的是构造函数。如果一个类中没有定义任何构造函数,编译器将生成一个不带参数的公有缺省构造函数。但只要定义了一个任意的构造函数,就不会生成缺省构造函数了。
A、 B、 C、 D、 D重载后的运算符的优先级和结合性都不会改变,运算符重载进行对原有的运算符进行适当的改造,重载的功能与原有的功能相类似,但是不能改变原运算符的操作对象个数。
A、 B、 C、 D、 A本题考查数据库系统的基本概念和知识。数据的逻辑结构是数据间关系的描述,它只抽象地反映数据元素之间的逻辑关系,而不管其在计算机中的存储方式。数据的存储结构又叫物理结构,是逻辑结构在计算
基类对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用基类的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。所以本题填:基类。
补充完整下面的类定义:constdoublePI=3.14;classCircle{//圆形物体的抽象基类protected:doubler;//半径public:Circ
关系模型数据库系统模型有3种,分别为:层次模型、网状模型和关系模型。其中,层次模型用树型结构表示,网状结构用无向图表示,关系模型用二维表表示。
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。有如下程序:#include<iostream>usingnamespaees
若有类声明:classMyClass{public:MyClass(){cout<<1;}};执行下列语句MyClassa,b[2],*P[2];以后,程序的输出结果是A)11
按照标识符的要求,下列选项中,()符号不能组成标识符。
随机试题
患儿,女,10个月。右侧上唇Ⅲ度唇裂,其临床表现应该是
A.布洛芬B.贝诺酯C.阿司匹林D.吲哚美辛E.对乙酰氨基酚心功能不全患者应慎用的是()。
下面受扭空心圆轴横截面上的切应力分布图中,正确的是()。
“十一五”规划的指导原则不包括()。
场景某机电工程安装公司承包了该市某项目的高层建筑给、排水管道安装工程。根据要求,机电安装公司派出两名具有民用、公民建筑机电安装技术的专业人员随同基础施工单位一起工作。由于材料准备的不充分,附件检验不合格的,按照一般要求,在管道安装前重新进行了处理,达到要
金融机构人民币存款基准利率由各金融机构结合自身经营目标具体制定。()
下列属于城乡居民均等化的公共服务措施是()。
在数列居于第()项。
方差分析首先进行检验的是()。
【26】【44】
最新回复
(
0
)