首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 函数diff的功能是:根据两个由整数(都大于-32768)按升序构成的单链表L1和L2(分别由A,B指向)构造一个单链表L3(由*r指向),要求13中的所有整数都是L1,并且不
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 函数diff的功能是:根据两个由整数(都大于-32768)按升序构成的单链表L1和L2(分别由A,B指向)构造一个单链表L3(由*r指向),要求13中的所有整数都是L1,并且不
admin
2009-02-15
57
问题
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。
【说明】
函数diff的功能是:根据两个由整数(都大于-32768)按升序构成的单链表L1和L2(分别由A,B指向)构造一个单链表L3(由*r指向),要求13中的所有整数都是L1,并且不是 L2中的整数,还要求L3中的所有整数都两两不等。
【函数】
#include < malloc. h >
typedef struct node {
int d;
struct node * next
} Node;
void diff(Node *A,Node * B,Node * * r)
{
int lastnum;
Node * p;
*r = NULL;
if( ! A) return;
while((1))
if(A->d < B ->d)
{
lastnum =A -> d;
p= ( Node * ) malloc( sizeof(Node) );
p->d = lastnum;
p->next= *r;(2);
do
A = A -> next;
while((3));
}
else if(A->d > B->d)
B=B- >next;
else {
(4);
lastnum=A -> d;
while ( A && A->d = = lastnum) A=A-> next;
}
while(A)
{
lastnum=A->d;
p=( Node * ) malloc( sizeof(Node) );
p-> d = lastnum;
(5);
*r=p;
while (A && A->d = = lastnum) A=A->next;
}
}
选项
答案
(1)A&&B (2)*r=p (3)A&&A->d==lastnum (4)B=B->next (5)p->next=*r
解析
函数的功能在函数说明中已经讲得很清楚了,这里就不再重复。程序的思路是:从链表A取一个元素和链表B中第一个元素进行比较,如果链表A元素小于链表B的元素,则将链表A中元素插入到链表C中,指针后移,在后移时要屏蔽所有相同元素;如果链表A元素大于链表B的元素,将链表B指针后移;如果链表A元素等于链表B的元素,链表A和链表B的指针都向后移,而且要屏蔽链表A中所有相同元素。当链表A和链表B都没有结束时,循环执行上述操作。如果链表B已经到链尾,但链表A没有结束,则将链表A中的剩余元素加入到链表C中,同时也要屏蔽所有相同元素。
根据上面的分析,(1)空处需要填写循环条件,显然是链表A没有结束,而且链表B也没有结束,即“A!=NULL&&B!=NULL”或其等价形式。
(2)空所在的语句块是处理链表A元素小于链表B的元素的情况,需要将链表A中元素插入到链表C中,在它的前一条语句已经把这个结点后继指针指向链表C的第一个结点,这里需要将链表C的第一个结点设置成该结点,即“*r=p”。
(3)空处所在do…while循环的目的是屏蔽所有相同元素,需要写出这个循环的条件,显然是当一个结点的值不等于刚刚插入的结点的值或链表A已经到了链尾时就要退出循环。因此(3)空处应填写“A! =NULL&&A->d==lastnum”及其等价形式。
(4)空所在语句块是处理链表A元素等于链表B元素的情况,链表A和链表B的指针都向后移,而且要屏蔽链表A中所有相同元素。链表A的指针向后移已经写出,因此,(4)空应填写“B=B->next”。
(5)空所在while循环是处理链表B已经到链尾,但链表A没有结束的情况。这时需要将链表A中的剩余元素加入到链表C中,插入的方法和(2)空处所在语句块插入方法一致。(5)空需将要插入结点的指针域指向链表C的头指针*r,因此(5)空处应填写“p->next=*r”。
转载请注明原文地址:https://kaotiyun.com/show/4bjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
信息处理技术员资格考试的试卷包括信息处理基础知识、计算机基础知识、法律法规知识、专业英语、办公软件使用技能五个方面。某次考试后,对这五个方面分别统计了各考生的得分率以及全国的平均得分率。为了直观展现每个考生在各个方面的水平以及该考生的整体水平,并与全国平均
某地区对高二学生举行了一次数学统考,并按“成绩-人数”绘制了分布曲线。考试成绩呈(12)________________,分布比较合理。
在Word2010文档中,某个段落最后一行只有一个字符,()不能把该字符合并到上一行。
下列快捷功能按钮中,可以在画好的图形内填充颜色的是(49)。
计算机操作系统的主要功能是______。
在Word2007中,若用户需要将一篇文章中的字符串“Internet”全部替换为字符串“因特网”,则可以在编辑菜单中选择()命令。
某商场记录(统计)销售情况的数据库中,对每一种商品采用了国家统一的商品编码。这种做法的好处不包括(11)________________。
在Excel2007中,利用填充柄可以将数据复制到相邻单元格中。若选择含有数值的上下相邻的两个单元格,按住鼠标左键向下拖动填充柄,则数据将以(49)________________填充。
请根据图2-13网页的显示效果,解释该ASP程序中用下画线标出的语句的含义,即填写(1)、(3)、(4)、(6)、(10)空缺处的解释内容。请根据图2-13网页的显示效果,将ASP程序中(2)、(5)、(7)、(8)、(9)空缺处的代码补充完整。A
阅读下列说明和HTML文本,分析其中嵌入的JavaScript脚本,将应填入(n)处的语句填到对应栏内。[说明]在文本框中实现时钟显示功能,格式如下:“-年-月-日小时:分:秒星期几”[HTML文本]<html>
随机试题
Oneofthemisconceptionsaboutelitesportisthatgreatathleteshavenothingincommonwithnormalhumanbeings.【C1】________t
心电图上区别心肌梗死和心绞痛最有意义的改变是
A.质量B.质量保证C.质量控制D.质量管理E.全面质量管理决定产品的适用性的性质是
证见头目眩晕,腰疫腿软,遗精滑泄,自汗盗汗,口燥舌干,舌红少苔,脉细。方剂宜选用
关于软膏剂的正确表述是
纳税人对税务机关()行为不服的,可以不经复议直接向人民法院起诉。
物权的特征有()。
在人口变动情况抽样调查中,应在本调查小区登记的人有()。
顺利有效地完成某种活动所必须具备的心理条件叫()。
根据党的十八大报告,我们持续推进两岸交流合作的具体措施包括()。
最新回复
(
0
)