首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数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
86
问题
给定程序中,函数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全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>#include<stdlib.h>main(){int*a,*b,*c;a=b=c=(int*)malloc(sizeof(int));*a=1;*b=2,*c=3;a=b;p
有以下程序#include<stdio.h>#include<string.h>voidfun(char*w,intm){chars,*p1,*p2;p1=w;p2=w+m-1;while(p1<p2){s=*p1;*
若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是
下列叙述中正确的是
生产每种产品需要多种零件,则实体产品和零件间的联系是
有以下程序#include<stdio.h>structSTU{charname[9];charsex;intscore[2];};voidf(structSTUa[]){structSTUb={"zhao",’m’,85,9
以下叙述中正确的是
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在main函数中输出。请在程序的下划线处填入
设二叉树的前序序列为ABDEGHCFIJ,中序序列为DBGEHACIFJ。则后序序列为
随机试题
社会主义初级阶段的基本经济制度中要坚持公有制主体地位,那么公有制经济的比重越大越好。
A.半夏B.蒲黄C.两者均是D.两者均非孕妇不宜使用的药物是()
下列哪种物质中毒具有缺氧和抑制酶的活力双重中毒机制
下列地基处理方案中,属于复合地基做法的是:
将工作分解结构所分解的独立单元的工作责任赋予具体的部门和人员,从而在项目资源和项目工作之间建立了一种明确的目标责任关系,这就是项目管理的常用工具()。
取得建造师注册证书的人员()工程项目施工的项目经理。
银行业金融机构根据借款人的有效贷款需求,主要通过贷款人受托支付的方式,将贷款资金支付给符合合同约定的借款人交易对象的过程是指()
讲清同刑事犯罪作斗争是法律赋予每个公民的权利和义务,是每个热爱社会主义祖国的公民义不容辞的()。
根据担保法规定,下列情形不必经保证人同意而仍继续承担原保证责任的是()。
下面正确使用动态数组的是
最新回复
(
0
)