首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。 请在程序的下划线处填入正确的内容并把下划线删
给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。 请在程序的下划线处填入正确的内容并把下划线删
admin
2021-04-28
46
问题
给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
1 #include<stdio.h>
2 #include<stdlib.h>
3 #define N 6
4 typedef struct node{
5 int data;
6 struct node *next;
7 } NODE;
8 void fun(NODE *h)
9 { NODE *p,*q;int t;
10 /**********found**********/
11 p=___1__;
12 while(p) {
13 /**********found**********/
14 q=__2__;
15 while(q) {
16 /**********found**********/
17 if(p->data__3__q->data)
18 { t=p->data;p->data=q->data;q->data=t;}
19 q=q->next;
20 }
21 p=p->next;
22 }
23 }
24 NODE *creatlist(int a[])
25 { NODE *h,*p,*q;int i;
26 h=(NODE *)malloc(sizeof(NODE));
27 h->next=NULL;
28 for(i=0;i<N;i++)
29 { q=(NODE *)malloc(sizeof(NODE));
30 q->data=a
;
31 q->next=NULL;
32 if(h->next==NULL)h->next=p=q;
33 else{p->next=q;p=q;}
34 }
35 return h;
36 }
37 void outlist(NODE *h)
38 { NODE *p;
39 p=h->next;
40 if(p==NULL)printf(’’The list is NULL!\n’’);
41 else
42 { printf(’’\nHead’’);
43 do
44 {printf(’’->%d’’,p->data);p=p->next;}
45 while(p!=NULL);
46 printf(’’->End\n’’);
47 }
48 }
49 main()
50 { NODE *head;
51 int a[N]={0,10,4,2,8,6};
52 head=creatlist(a);
53 printf(’’\nThe original list:\n’’);
54 outlist(head);
55 fun(head);
56 printf(’’\nThe list after sorting:\n’’);
57 outlist(head);
58 }
选项
答案
(1)h->next (2)p->next (3)>=
解析
函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序,在fun函数内采用的是选择法排序。
第一空:由审题分析可知,q从h的下一个元素开始寻找最小值,故第一空为“h->next”。
第二空:由审题分析可知,while循环是在剩下的元素当中找最小值,剩下的结点是由q指向的链表,q从p的后一个结点开始,故第二空处应为“p->next”。
第三空:“if(p->data__3__q->data)”是比较p结点和q结点数据的大小,如果p结点的数据比q结点的数据大,那么应该将p结点和q结点的数据进行交换,故第三空处应为“>=”。
转载请注明原文地址:https://kaotiyun.com/show/sRtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
某图书集团数据库中有关系模式R(书店编号,书籍编号,库存数量,部门编号,部门负责人),其中要求(1)每个书店的每种书籍只在该书店的一个部门销售;(2)每个书店的每个部门只有一个负责人;(3)每个书店的每种书籍只有一个库存数量。则关系模式R最高是()
有以下程序#includemain(){charc;while((c=getchar())!=’\n’){switch(c-’2’){case0:case1:putchar(c+4);case2:
代码编写阶段可进行的软件测试是
若有定义语句:inta,b,c,*p=&c;,接着执行以下选项中的语句,则能正确执行的语句是()。
以下选项中表示一个合法的常量是(说明:符号□表示空格)
下列叙述中正确的是()。
若有以下定义和语句#includechars1[10]="abcd!",*s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是
有以下程序main0{inta=-2,b=0;while(a++&&++b);printf("%d,%d\n",a,b);}程序运行后输出结果是
若有以下程序段structst{intn;structst*next;};structsta[3]={5,&a[1],7,&a[2],9,’\0’},*p;P=&a[0];则以下选项中值为6的表达式是
给定程序中,函数fun的功能是将不带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源
随机试题
下列情况中.无法通过参与组成部分审计工作消除疑虑的有()。
在数据链路中,数据以()为单位传送。
中国正式成为WTO的第143个成员是在()
不属于菌群二度失调临床表现的是
皮肤病发生迅速,骤起骤退,游走不定,泛发全身或多发于头面,皮肤干燥,脱屑,瘙痒,为
有关偏心受压构件的正截面抗弯承载力的叙述中,正确的是()。
假定F1=1100kN,F2=900kN右边支座悬挑尺寸b=1000mm。则基础梁左边支座悬挑尺寸c为( )项尺寸时,地基反力才呈均匀(矩形)分布状态。假定F1=206kN,F2=804kN,c=1800mm,b=1000mm,混凝土强度等级为C20
甲公司与乙公司签订了商品房包销合同,约定甲公司将其开发的5套别墅交由乙公司包销。甲公司将其中1套房屋卖给丙,丙向甲公司支付了首付80万,后因国家出台房地产调控政策,丙失去了购房资质,致使甲公司与丙之间的房屋买卖合同不能继续履行。根据上述案情,请回
现在,经常出国的中国人都明显感觉到一种巨大的落差:一边是中国经济越来越强大,一边则是部分国人的人文形象和公共形象步步下跌。这段话想告诉我们不要妄自尊大。()
计算机病毒是指“能够侵入计算机系统并在计算机系统中潜伏、传播,破坏系统正常工作的一种具有繁殖能力的()。”
最新回复
(
0
)