首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。 【说明】 函数sort (NODE *head)的功能是;用冒泡排序法对单链表中的元素进行非递减排序。对于两个相邻结点中的元素,若较小的元素在前面,则交换这两个结点中的元素值。其中,he
阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。 【说明】 函数sort (NODE *head)的功能是;用冒泡排序法对单链表中的元素进行非递减排序。对于两个相邻结点中的元素,若较小的元素在前面,则交换这两个结点中的元素值。其中,he
admin
2008-11-20
38
问题
阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。
【说明】
函数sort (NODE *head)的功能是;用冒泡排序法对单链表中的元素进行非递减排序。对于两个相邻结点中的元素,若较小的元素在前面,则交换这两个结点中的元素值。其中,head指向链表的头结点。排序时,为了避免每趟都扫描到链表的尾结点,设置一个指针endptr,使其指向下趟扫描需要到达的最后一个结点。例如,对于图4-1(a)的链表进行一趟冒泡排序后,得到图4-1(b)所示的链表。
链表的结点类型定义如下:
typedef struct Node {
int data;
struct Node *next;
} NODE;
【C语言函数】
void sort (NODE *head)
{ NODE *ptr,*preptr, *endptr;
int tempdata;
ptr = head -> next;
while ((1)) /*查找表尾结点*/
ptr = ptr -> next;
endptr = ptr; /*令endptr指向表尾结点*/
ptr =(2);
while(ptr != endptr) {
while((3)) {
if (ptr->data > ptr->next->data){
tempdata = ptr->data; /*交换相邻结点的数据*/
ptr->data = ptr->next->data;
ptr->next->data = tempdata;
}
preptr =(4); ptr = ptr -> next;
}
endptr =(5); ptr = head->next;
}
}
选项
答案
(1)ptr -> next (2)head->next (3)ptr !=endptr,或其等价形式 (4)ptr (5)preptr
解析
本题考查链表运算能力。
从题目中的以下代码可知,ptr最后应指向表尾结点。
ptr = head -> next;
while ( (1) ) /*查找表尾结点*/
ptr = ptr -> next;
endptr = ptr; /*令endptr指向表尾结点*/
显然,空(1)处应填入“ptr->next”,这样循环结束时,ptr指向表尾结点。若填入“ptr”,则循环结束时,ptr为空指针。
进行冒泡排序时,从头至尾依次比较逻辑上相邻的两个结点的数据,如果小元素在前大元素在后,则交换。这样,经过一趟扫描,就将最大元素交换到了表的最后。下一趟可将次大元素交换到最大元素之前。显然,空(2)处应填入“head->next”。
由于程序设置的endptr用于指示出每趟扫描需到达的最后一个结点,ptr用于依次扫描链表中的结点,因此空(3)处的循环条件为“ptr != endptr”。
显然,指针preptr起的作用是指向ptr的前驱结点,因此,ptr每向后修改一次,相应地preptr就要修改一次,空(4)处应填入“ptr”。本趟循环结束后,下一趟扫描也就确定了,因此在空(5)处填入“preptr”。
转载请注明原文地址:https://kaotiyun.com/show/jsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel中,设A1单元格中的值为2014-5-24,若在A2单元格中输入日期函数“=DAY(A1)”,按回车键后,则A2单元格中的值为(52)。
某学校上学期举办了多项课外活动,每个学生获得了一个课外活动总评分值,其中最低分61分,最高分138分。为使该评分指标标准化(评分范围落在0~100分,60分以上及格),使其更直观,更具有可比性(便于与各科目成绩和其他学期课外活动得分比较),需要将每个学生课
一个完整的计算机系统由______组成。
信息处理技术员除了应熟练使用计算机进行信息处理操作外,还应熟悉本岗位相关的业务知识,其理由比较多,但不包括(67)。
在某机床上加工一批零件,要求其直径控制在1.5±0.2cm。检验员定时抽查测量了产品的直径,并绘制了如下的质量控制图。检验结论是:有()次检查发现质量问题,需要进一步查明原因并改进。
企业中的信息处理过程包括多个阶段,对每个阶段都应有目标要求,有规范的制度,有需要特别注意的事项。以下叙述中正确的是(25)。
操作系统的资源管理功能不包括________________。
()是幻灯片缩小之后的打印件,可供观众观看演示文稿放映时参考。
信息产业部最近制定并发布的手机充电器统一标准,在全国范围内是(22)。
随机试题
爱因斯坦所说的“猪栏的理想”,指的是
A.药品指标代理组织B.药品销售代理组织C.药品物流组织D.传统药品交易中介服务组织E.网上药品交易中介服务组织
计量检测中,根据使用频率及生产经营情况,暂停使用的应标明( )。
血压计()
下列关于战略规划的说法不正确的是()。
下列属于上海老饭店特色名菜的有()。
关于陈述性知识,下列说法正确的是()
世上没有一种东西是一成不变的,一切都在变动之中,包括民族文化。冷战后日益加速的全球化正给地球人带来前所未有的文化冲突,而人类文化从来都是在冲突中融合,在融合中冲突的。全球化正在改变着中国人的生产方式和生活方式。中国人早已走向世界,在全世界寻找机会,表现出了
Ontheoccasionofhis80thbirthday,SirWinstonChurchillwaspresentedwithhisportraitbyawell-knownmodemartist,Graham
We_______(坚持扩大内需方针)andcontinuedtotakemeasurestoexercisemacro-controlovernewdevelopmentsinthecourseofeconomicope
最新回复
(
0
)