首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。 【说明】 函数sort (NODE *head)的功能是;用冒泡排序法对单链表中的元素进行非递减排序。对于两个相邻结点中的元素,若较小的元素在前面,则交换这两个结点中的元素值。其中,he
阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。 【说明】 函数sort (NODE *head)的功能是;用冒泡排序法对单链表中的元素进行非递减排序。对于两个相邻结点中的元素,若较小的元素在前面,则交换这两个结点中的元素值。其中,he
admin
2008-11-20
119
问题
阅读以下说明和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
程序员下午应用技术考试
软考初级
相关试题推荐
某关系表定义了“姓名”、“身份证号”、“性别”、“年龄”4个字段,其中(60)字段可以作为此关系表的主键。
在Excel中,若A1单元格的值为5,在B1单元格输入函数“=A1-10”,则B1单元格的值为______。
在SQL中,GROUPBY子句用于()。
假设“EXAM.DOC”文件夹存储在“EXAM1”文件夹中,“EXAM1”文件夹存储在“EXAM2”文件夹中,“EXAM2”文件夹存储在F盘的根文件夹中,当前文件夹为“EXAM1”。那么,正确描述“EXAM.DOC”文件的绝对路径表示为(37)。
将Word2007文档中部分文本内容复制到其他地方,先要进行的操作是__________。
(68)________________属于人工智能的应用。
在Word2007文档编辑时,使用(39)________________选项卡中的“分隔符”命令,可以在文档中指定位置强行分页。
在Excel2010中,设单元格A1、B1、C1、A2、B2、C2中的值分别为1、2、3、4、5、6,若在单元格D1中输入函数“=MAX(A1:A2,B1:C2)”,按回车键后,则D1单元格中的值为(
(1)是固化在主板ROM内的程序,为计算机提供最底层、最直接的硬件访问和控制。
问卷调查中,问卷的设计是关键,其设计原则不包括()。
随机试题
男性,48岁,近1周内发现血压升高156/98mmHg,服用利尿剂氢氯噻嗪降压效果不佳,且出现四肢行走无力,测血钾为2.2mmol/L。若需明确诊断,则下一步需作
评价社区冠心病干预措施效果最有意义的指标是
(一) 材料①:2012年2月,甲公司与其全资子公司乙公司签订了《协议一》,约定甲公司将其建设用地使用权用于抵偿其欠乙公司的2000万元债务,并约定了仲裁条款。但甲公司未依约将
招标采购项目管理方案经过各方面专业人员针对项目的功能、规模、质量、价格、进度等需求目标进行研究和分析,使招标采购项目实施的组织、方法、手段等都更具()
陈文、韩耀、顾飞三人合伙开办了饭香快餐连锁店,陈文负责对外开拓市场业务,韩耀和顾飞负责店内经营。陈文为了提高市场占有率,排挤竞争对手,在未告知韩耀、顾飞的情况下散布谣言,称竞争对手闻就香快餐公司(以下简称“闻就香公司”)在其食品中使用了地沟油。网民吴石将该
对于组成部分财务信息,集团项目组应当确定由其亲自执行或由组成部分注册会计师代为执行的相关工作的类型,下列相关决策中,错误的是()。
在信号和噪音的先定概率均为0.5的情况下,如果对信号的漏报会造成很大的损失,人的判断标准倾向于()。[华南师范大学2017]
Evenachildknowsthatnoddingheadmeans"Yes".ButsomepeopleWouldprobably【C1】______whentheyfirstcametoIndia.Whenth
ThissectionmeasuresyourabilitytospeakinEnglishaboutavarietyoftopics.Therearesixquestionsinthissection.Fore
Whatisthepassagemainlyabout?
最新回复
(
0
)