首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输
admin
2019-05-22
17
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。该程序从键盘读入整数,并按从大到小的顺序输出输入整数中互不相等的那些整数。程序一边读入整数,一边构造一个以大到小顺序链接的链表,直至输入0时结束。然后顺序输出链表上各表元的整数值。主函数每读入一个整数,就调用函数fun(),函数fun()将还未出现在链表上的整数按从大到小的顺序插入到链表中。为了插入方便,链表在表首有一个辅助表元。
注意:不能修改程序的其他部分,只能修改fun()函数。
1 #include
2 C1aSs 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"<
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<
data<<’ ’;
29 std::cout<
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
data) //寻找插入的位置 5 { 6 u=v; v=v->next ; 7 } 8 if(v==NULI||x>v一>data) //判断是否为新的元素 9 { 10 p=new NODE; 11 p->da七a=x; //生成新的元素 12 p->next=V; 13 u->next=p; //插入新的元素 14 }
解析
(1)该程序功能是构造一个以大到小顺序链接的链表。它的解题思路,首先寻找插入的位置,然后判断是否为新元素,最后插入。
(2)从已给部分源程序的main主函数开始入手,核心函数void fun(ODE*list,int x)中的:list参数为单链表,x为要插入的数据。
[解题思路]
(1)首先利用while循环寻找插入元素的位置。
(2)然后判断要插入的元素是否为新元素。
(3)如果为新元素,那么执行单链表的操作,插入元素。
转载请注明原文地址:https://kaotiyun.com/show/LB8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
外部变量在文件lCPP中的变量如果也要在文件2CPP中访问,那么该变量要声明为外部变量。
A、 B、 C、 D、 C此题考查的是函数模板。声明一个函数模板的格式是:template函数声明,{函数体}其中的是由一个或多个“模板形参”组成的,每个“模板形参”可具有以下几种形式:t
A、 B、 C、 D、 B构造函数A中的形参a对静态成员a形成了屏蔽,故只有在成员函数init()中才将静态成员a的值修改为1,而在其他成员函数中没发生变换,故obj.a=1。
A、 B、 C、 D、 D在C++中,数组的下标为0~Ⅳ-1,如果定义数组指针,则指针刚开始时是指向数组的头元素
下列程序的输出结果是______。#include<iostream>#include<cstring>usingnamespacestd;voidfun(constchar*S,char&C){e=
4传值是默认的参数传递方式。如果调用函数时,须要改变实参或者返回多个值,就应该采用传地址方式。传递指针属于显式的传地址方式,传递引用属于隐式的传地址方式。本题采用的是传递引用,所以实参被改变。
黑盒测试是否能够发现错误取决于测试实例的设计。动态测试的设计测试实例方法一般有两类:黑盒测试方法和白盒测试方法。
若有类声明:classMyClass{public:MyClass(){cout<<1;}};执行下列语句MyClassa,b[2],*P[2];以后,程序的输出结果是A)11
下面字符串中,不可以用作C++标识符的是()。
下列字符串中可以用作C++语言标识符的是
随机试题
下列程序的输出结果是inta=1;intf(){inta=2;returna;}voidmain(){printf("%d,%d",a,f());}()
7个月患儿,发热3天,体温39~40℃,流涕,轻咳。查体:一般情况好,除咽部充血外,未见其他异常,一直服用中药治疗。近日热退,因皮肤出现红色斑丘疹而就诊。
患者,女性,36岁。间断发作下腹部疼痛伴腹泻2年,每天排便3~4次,为脓血便,常有里急后重。排便后疼痛缓解。该患者最可能的诊断是
《电气设备安装工程预算定额》规定,安装与生产同时进行时,降效增加费用可按人工费的()计算。
某单位初次申请测绘资质,按照《测绘资质管理规定》,下列专业范围中,可以受理甲级测绘资质申请的是()。
会计凭证的传递是指会计凭证从取得或填制时起至归档保管过程中,在单位内部会计部门和人员之间的传递程序。()
下列选项中,属于办毕文书处置方式的有()、
建设中国特色社会主义人数最多、最基本的依靠力量是()
下列关于无损压缩的叙述中,正确的是(34)。
A、Toomanyanimalseatingtheplantsinonesmallarea.B、Plantingtoomuchvegetationinonesmallarea.C、Toomanypeoplebuil
最新回复
(
0
)