首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将带头结点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。 请在程序的下画线处填入正确的内容并把下画线删
给定程序中,函数fun的功能是将带头结点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。 请在程序的下画线处填入正确的内容并把下画线删
admin
2020-07-28
85
问题
给定程序中,函数fun的功能是将带头结点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BIANK1.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;
19 p->data=q->data;
20 q->data=t;}
21 q=q->next;
22 }
23 p=p->next;
24 }
25 }
26 NODE* creatlist(int a[])
27 {NODE*h,*p,*q; int i;
28 h=(NODE*)malloc(si zeof (NODE));
29 h->next=NULL;
30 for(i=0;i<N;i++)
31 {q=(NODE*)malloc(sizeof (NODE));
32 q->data=a
;
33 q->next=NULL;
34 if(h->next==NULL)
35 h->next=P=q;
36 else{p->next=q;p=q;}
37 }
38 return h;
39 }
40 void outlist(NODE*h)
41 {NODE*p;
42 p=h->next;
43 if(p==NULL)
44 printf(’’The list is NULL!\n’’);
45 else
46 {printf(’’\nHead’’);
47 do
48 {printf(’’->%d’’,p->data);
49 p=p->next;}
50 while(p!=NULL);
51 printf(’’->End\n’’);
52 }
53 }
54 main( )
55 {NODE*head;
56 int a[N]={0,10,4,2,8,6};
57 head=creatlist(a);
58 printf(’’\nThe original list:\n’’);
59 outlist(head);
60 fun(head);
61 printf (’’\nThe list after sor-ting:\n’’);
62 outlist(head);
63 }
选项
答案
(1)h->next(2)p->next(3)>
解析
填空1:本题考查了指针变量p赋初值,使p指向链表的头结点的下一个结点,因此本空应该填写h->next。
填空2:本空考查了q的作用,q代表p的下一个数,因此次空应该填写p->next。
填空3:if判断句是比较链表中相邻两个数的大小,如果p->data>q->data就交换这两个数的值,因而此空填写>。
转载请注明原文地址:https://kaotiyun.com/show/wL3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
数据库管理系统的基本功能不包括
设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=15,rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为
若变量已正确定义为int型,要通过语句scanf("%d,%d,%d",&a,&b,&c);给a赋值1、给b赋值2、给c赋值3,以下输入形式中错误的是(注:□代表一个空格符)
有以下程序main(){unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf("%d\n",d);}程序运行后的输出结果是
以下叙述中正确的是
设二叉树的前序序列与中序序列均为ABCDEFGH,则该二叉树的后序序列为
对如下二叉树进行后序遍历的结果为
关于算法,以下叙述中错误的是
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是
以下说法中正确的是()。
随机试题
Inearlytimes,mostpeopleweretoobusymakingalivingtohavemany______.
衡量社会进步的根本标准是【】
同脏腑没有直接的相互络属关系的是
A.应取得《进口药品注册证》B.应取得《医药产品注册证》C.应取得《进口准许证》D.应取得《药品经营许可证》进口在台湾地区生产的药品
《上市公司重大资产重组管理办法》属于()层级的规定。
财政的可控制性支出是()。
安全生产除了保障人员安全与健康之外,还应避免()。
当导游人员接到旅游者的口头投诉时,必须认真倾听,适时反驳。()
进行各种管理的先行条件和基础是()。
ThelargeAmericanenergyservicecompany,Enron,failedtwoyearsago.IthadbeentheseventhlargestcompanyintheUnitedSt
最新回复
(
0
)