首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、 10。 请在程序的下划线处填入正确的内容并把下
给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、 10。 请在程序的下划线处填入正确的内容并把下
admin
2016-10-29
29
问题
给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、 10。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#clefitie N 6
typedef struct node {
int data;
struct riode*next;
}NODE;
void fun(NODE*h)
{NODE*p,*q;int t;
p=h;
while(o){
/**********found**********/
q=____1____;
/**********found**********/
while(____2____)
{ if(p->data>q->data)
{t=p->data;p->data=q->
data ; q->data=t;}
q=q->next;
}
/**********found**********/
p=____3____;
}
}
NODE*creatliSt(int a[])
{NODE*h,*p,*q;int i;
h=NULL;
for(i=0;i
{q=(NODE*)malloc(sizeof(NODE));
q->data=a
;
q->next=NULL;
if(h==NULL)h=p=q;
else { p->next=q; p=q;}
}
return h;
}
void outlist(NODE*h)
{NODE*p;
p=h ;
if(p==NULL)printf("The list is
NULL!\n");
else
{printf("\nHead");
do
{printf("->%d”,p->data); p=p
->next;}
while(p!=NULL);
printf("->End\n");
}
}
main()
{NODE*head;
int a[N]={0,10,4,2,8,6};
head=creatlist(a);
printf("\nThe original list:\n");
outlist(head);
fun(head);
printf("\nThe list after inverting:
\n");
outlist(head);
}
选项
答案
(1)p->next (2)q (3)p->next
解析
第一空:由审题分析可知,q从p的下一个元素开始寻找最小值,故第一空为“p->next”。
第二空:由审题分析可知,“while(__2__)”是在剩下的元素当中找最小值,剩下的结点是由q指向的链表,故第二空处的循环条件是q不为NULL链表就存在元素继续往后搜索,故第二空处为“q”。
第三空:由审题分析可知,q指向p的下一个结点,下次外循环进入的继续寻找剩余结点的最小值,故第三空处应为“p->next”。
转载请注明原文地址:https://kaotiyun.com/show/zVDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序的输出是______。main(){intx=3,y=6,a=0;while(x++!=(y-=1)){a+=1if
在数据流图(DFD)中,带有名字的箭头表示______。
下列程序的输出结果是【】。main(){inta[]={2,4,6},*prt=&a[0],x=8,y,z;for(y=0;y<3;y++)z=(*(ptr+y<x)?*(ptr+y):
以下能正确定义一维数组的选项是______。
函数fun的功能是计算xn:doublefun(doublex,intn){inti;doubley=1;for(i;=1;i<=n;i++)y=y*x;returny;}主函数中已
以下程序中,函数SumColumMin的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。#defineM2#defineN4
以下程序的输出结果是______。#defineSQR(X)X*Xmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}
有以下程序段chareh;intk;ch=’a’;k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII码值为97,则执行
以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。main()/*Beginning*/{intr;floats;scanf("%d",&r);s=*π*r*r*r;printf("
随机试题
thenamingtheory
A.消食化积B.疏风散寒C.清热利湿D.健脾益气E.补脾温肾
患者,女,70岁。右颈部红肿疼痛1周,逐渐加重,伴全身高热,体温38.9℃,WBC18×109/L,中性90%,出现中毒症状。1天来肿胀处出现多个脓头,剧痛难忍。此患者的治疗应给予
变压器的零序电抗与其构造和绕组连接方式有关。对于YN,d接线、三相四柱式双绕组变压器,其零序电抗为:()
根据《水利工程施工监理规范》SL288—2014.的有关规定,监理人应检查、督促承包人对发包人提供的测量基准点进行(),并督促承包人在此基础上完成施工测量控制网的布设及施工区原始地形图的测绘。
意向书的导语中不用涉及的内容是()。
要使一个团队能跻身世界强队之列,至少必须解决两个关键问题。一是提高队员基本技能,二是讲究科学训练。不切实解决这两点,即使临战时拼搏精神发挥得再好,也不可能取得突破性的成绩。以下哪一项推理没有表达上述议论的观点?
小王从A地去往B地,下图是一张道路示意图,每段路上的数字表示两地之间的距离(单位:千米)。如果汽车百千米耗油量为10升,油价6.5元/升,问:小王从A地去往B地至少要消耗多少元的燃油?
Englishremainsadominantanduniversallanguage,whichpresently【51】asaconnection-linkbetweengreatvarietiesofdif
Hewasverysickandhislifewashangingbya______.
最新回复
(
0
)