首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。 请在程序的下画线处填入正确的内容并将下画线删除,使
下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。 请在程序的下画线处填入正确的内容并将下画线删除,使
admin
2018-03-28
40
问题
下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<Stdlib.h>
#define N 8
typedef struct list
{ int data;
struer list*next;
}ST,TST;
void fun(SLIST * h,int x)
{ SLTST*p,*q,*s;
S=(SLIST*)malloc(sizeof
(SLIST));
/*********found*********/
s一>data=
【1】
;
q=h;
p=h一>next;
wh21e(p!=NULL&&x>p一>data){
/*********found*********/
q=
【2】
;
p=p一>next;
}
s一>next=p;
/*********found*********/
q一>next=
【3】
;
}
SLIST*creatlist(int*a)
{ SLIST*h,*p,*q;int i;
h=p=(SLIST*)malloc(si zeof(SLIST));
for(i=0;i<N;i++)
{q=(SLIST*)malloc(si zeof(SLIST));
q->data=a
;p->next=q;
p=q;
}
p一>next=0;
return h;
}
void outlist(SLIST*h)
{ SLIST*p;
p=h一>next;
if(P==NULL)
printf("\nThe list is NULL!\
n");
else
(printf("\nHead");
do{printf("一>%d",p一>
data);
p=p一>next;
}while(p!=NULL);
printf("一>End\n");
}
}
main()
{ SLIST*head; int x;
int a[N]={11,12,15,18,19,22,25,29};
head=creatliSt(a);
printf("\nThe list before
inserting:\n");
outlist(head);
printf("\nEnter a number:"),
Scanf("%d",&x);
fun(head,x);
printf("\nThe list after inserting:\n");
outlist(head);
}
选项
答案
(1)x (2)p (3)s
解析
本题考查:链表的基本操作。了解链表的基本思想和相关算法,理解有关链表插入及删除时指针移动的先后顺序问题,注意指针的保存和归位。
填空1:将形参x赋值给结点的数据域。
填空2和填空3:将新的结点和原有链表中的结点进行比较。
转载请注明原文地址:https://kaotiyun.com/show/mDxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设已执行预编译命令#include,以下程序段的输出结果是chars[]="anapple";printf("%d\n",strlen(s));
在软件开发过程中,软件结构设计是描述______。
以下程序运行后的输出结果是【】。voidfun(intX,inty){x=x+y;y=x-y;x=x-y;printf("%d,%d,",x,y);}main(){intx=2,y=3;fun(x
有以下程序#inculde#deFineSUB(a)(a)(a)main(){inta=2,B=3,c=5,d;d=SUB(a+B)*c;printF(”%d\n”,d);}程序运行后的输山结果是
有以下程序 #include<stdio.h> main() { FILE *fp;int i,a[6]={1,2,3,4,5,6}; fp=fopen("d3.dat","w+b"); fwrite(a.sizeof
下面程序运行后的输出结果是_____。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=s[0].a
有以下程序:#include<stdio.h>main()}chara,b,e,d;seanf("%e,%e,%d,%d",&a,&b,&c,&d);printf("%c,%c,%e,%c\n",a,b,c,
下列属于不合法的main函数命令行参数表示形式的是()。
以下选项中可作为C语言合法整数的是()。
随机试题
规划编制机关违反《环境影响评价法》规定的法律责任是
小叶性肺炎的并发症为
患者,男,32岁。体检时,在颈前区扪及无痛性结节,大小约1.0cm×1.5cm,质地较硬。超声检查,结果如图l~3,以及彩图5-6所示。问题3:结合图1、图2表现,图3中所显示的结构有
在问卷设计中,问题排序非常重要,在关于社会工作者职业水平考试调查的问卷设计中,根据问题排序原则,排在最后的问题应是()。
()是指领导者尊重和关心下属的看法和情感,更愿意与下属建立相互信任的工作关系。
Thetrainshakesbackandforth,itswheelsmakingaloudnoiseagainstthetracks.Outsidethewindowthefreezingcoldofwint
冗余设计是指在人力资源聘任、使用、解聘、辞退、晋升等过程中要留有充分的余地,使人力资源整体运行过程具有一定的弹性,当某一决策发生偏差时,留有纠偏和重新决策的余地。根据上述定义,以下不属于冗余定义的是()。
营养学研究发现,大多数每日增加就餐次数的人都会吃更多的食物。然而,在其他条件不变的情况下,如果增加每天吃甜食的次数,只要进甜食总量不显著增加,一个人的血糖水平将显著低于他常规食用次数时的血脂水平。因此,多餐进食甜食有利于降低血糖。以下哪项如果为真,最能支持
阅读文章,完成下列5题。(甲)宋儒理学的代表人物中,如陆九渊的读书经验也有可取之处。《陆象山语录》有一则写道:“如今读书且平平读,未晓处且放过,不必太滞。”接着,他又举出下面的一首诗:“读书切戒在慌忙,涵泳工夫兴味长;未晓不妨权放过,切
Ithasbeenjustlysaidthatwhile"wespeakwithourvocalorganswe【B1】______withourwholebodies."Allofuscommunicatew
最新回复
(
0
)