首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C函数,填补代码中的空缺。 【说明】 函数Combine(LinkList La,LinkList Lb)的功能是:将元素呈递减排列的两个含头结点单链表合并为元素值呈递增(或非递减)方式排列的单链表,并返回合并所得单链表的头指针。例如
阅读以下说明和C函数,填补代码中的空缺。 【说明】 函数Combine(LinkList La,LinkList Lb)的功能是:将元素呈递减排列的两个含头结点单链表合并为元素值呈递增(或非递减)方式排列的单链表,并返回合并所得单链表的头指针。例如
admin
2016-09-08
1.4K+
问题
阅读以下说明和C函数,填补代码中的空缺。
【说明】
函数Combine(LinkList La,LinkList Lb)的功能是:将元素呈递减排列的两个含头结点单链表合并为元素值呈递增(或非递减)方式排列的单链表,并返回合并所得单链表的头指针。例如,元素递减排列的单链表La和Lb如图4一1所示,合并所得的单链表如图4一2所示。
设链表结点类型定义如下:
typedef struct Node{
int data;
struct Node *nextf
}Node,*LinkList;
【C函数】
LinkList Combine(LinkList La, LinkList Lb)
{//La和Lb为含头结点且元素呈递减排列的单链表的头指针
//函数返回值是将La和Lb合并所得单链表的头指针
//且合并所得链表的元素值呈递增(或非递减)方式排列
(1)Lc,tp,pa,pb;; //Lc为结果链表的头指针,其他为临时指针
if(!La)return NULL;
pa=La一>next; //pa指向La链表的第一个元素结点
if(!Lb)return NULL;
pb=Lb一>next; //pb指向Lb链表的第一个元素结点
Lc=La; //取La链表的头结点为合并所得链表的头结点
Lc一>next=NULLf
while(
(2)){ //pa和pb所指结点均存在(即两个链表都没有到达表尾)
//令tp指向pa和pb所指结点中的较大者
if(pa一>data>pb一>data){
tp=paf pa = pa一>next;
}
else f
tp=pb; pb=pb一>next;
}
(3)=Lc一>next; //tp所指结点插入Lc链表的头结点之后
Lc一>next=
(4);
}
tp=(pa)? pa:pb; //设置tp为剩余结点所形成链表的头指针
//将剩余的结点合并入结果链表中,pa作为临时指针使用
while(tp){
pa=tp一>next;
tp一>next =Lc一>next;
Lc一>next = tp;
(5);
}
return Lc;
}
选项
答案
(1)LinkList (2)pa&&pb (3)tp一>next (4)tp (5)tp=pa
解析
本题考查数据结构应用及C语言实现。链表运算是C程序设计题中常见的考点,需熟练掌握。考生需认真阅读题目中的说明,以便理解问题并确定代码的运算逻辑,在阅读代码时,还需注意各变量的作用。
根据注释,空(1)所在的代码定义指向链表中结点的指针变量,结合链表结点类型的定义,应填入“LinkList”。
由于pa指向La链表的元素结点、pb指向Lb链表的元素结点,空(2)所在的while语句中,是将pa指向结点的数据与pb所指向结点的数据进行比较,因此空(2)处应填入“pa&&pb”,以使运算“pa一>data>pb一>data"中的pa和pb为非空指针。
从空(3)所在语句的注释可知,需将tp所指结点插入Lc链表的头结点之后,空(3)处应填入“tp一>next",空(4)处应填入“tp”,如下图所示。
空(5)所在的while语句处理还有剩余结点的链表,pa是保存指针的临时变量,循环中的下面4条语句执行后的链表状态如下图所示。
pa=tp一>next; //①
tp一>next=Lc一>next; //②
Lc一>next=tp; //③
(5); //④
空(5)处应填入“tp=pa”,以继续上述的重复处理过程。
转载请注明原文地址:https://kaotiyun.com/show/89jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Word2010“查找和替换”文本框中,输入()符号可以搜索0到9的数字。
Access数据库属于______数据库。
计算机使用了一段时间后,系统磁盘空间不足,系统启动时间变长,系统响应延迟,应用程序运行缓慢,此时,需要对系统进行优化。(28)________________不属于系统优化工作。
下列关于系统软件的叙述中,正确的是(7)。
计算机使用一段时间后发现,系统启动时间变长,系统响应迟钝,应用程序运行缓慢,为此,需要进行系统优化。系统优化工作不包括___________。
企业信息化总体架构中,计算机硬件、网络系统、操作系统、数据库管理系统等属于(16)。
桌面上有各种图标,图标在桌面上的位置()。
由多台计算机组成的一个系统,这些计算机之间可以通过通信来交换信息,互相之间无主次之分,它们共享系统资源,程序由系统中的全部或部分计算机协同执行,执行过程对用户透明。管理上述计算机系统的操作系统是_________。
采购了多种品牌的部件进行计算机组装,每个部件都正常,连接、安装、配置操作也完全正确,但系统仍不能正常使用。很可能是____________问题。
请认真阅读下列有关Linux操作系统环境下配置成一台DNS服务器的说明信息,然后根据要求回答问题1至问题5。【说明】一台装有Linux操作系统的电脑,IP地址是“192.168.0.39’’,主机名是dnserver。现在要在这台电脑上配置成一台
随机试题
简述场独立性与场依存性。
______,youcannotfinishthebookintwodays.
肝经郁热型内伤发热的特点为
下列力(指每一对上下牙齿对咬时测得力值)的大小顺序排列正确的是()。
为确保建筑消防设施正常运行,建筑使用管理单位需要建立消防设施值班、巡查、检测、维修、保养、建档等管理制度,同时配备相关消防维护管理人员。下列对维护管理人员的从业资格要求中,不正确的是()
DRP输入的文件不包括()。
根据《专利法》的规定,下列关于实用新型的表述中,错误的是()。
试述教育学的未来发展趋势主要表现在哪些方面。
(2011年真题)下列情形中,体现责任自负原则的是
利用股指期货理论价格进行套利时,期货理论价格计算中没有考虑(),如果这些因素存在,则需要计算无套利区间。
最新回复
(
0
)