首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
给定程序中,函数fun的功能是将带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
admin
2016-12-06
24
问题
给定程序中,函数fun的功能是将带头结点的单向链表逆置,即若原链表中从头至尾结点数据域依次为2、4、6、8、10,逆置后,从头至尾结点数据域依次为10、8、6、4、2。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #include<stdlib.h>
3 #define N 5
4 typedef struct node{
5 int data;
6 struct node*next;
7 }NODE;
8 void fun(NODE * h)
9 ( NODE *p, *q, *r;
10 /*********found*********/
11 p=h->
【1】
;
12 /*********found*********/
13 if(p==
【2】
)return;
14 q=p->next;
15 p->next=NULL;
16 while(q)
17 {r=q->next;q->next=p;
18 /********* found*********/
19 p=q;q=
【3】
;
20 }
21 h->next=p;
22 }
23 NODE * creatlist(int a[])
24 { NODE * h,*p,*q;int i;
25 h=(NODE * )malloc(sizeof(NODE));
26 h->next=NULL;
27 for(i=0 ; i<N;i++)
28 { q=(NODE * )malloc(sizeof(NODE));
29 q->data=a
;
30 q->next=NULL;
31 if(h->next==NULL)
32 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)
41 printf(’’The list is NULL!\n’’);
42 else
43 {printf(’’\nHead’’);
44 do
45 {printf(’’->%d’’,p->data);
46 p=p->next;}
47 while(p!=NULL);
48 printf(’’->End\n’’);
49 }
50 }
51 main()
52 { NODE*head;
53 int a[N]={2,4,6,8,10};
54 head=creatliSt(a);
55 printf(’’\nThe original list:\n’’);
56 outlist(head);
57 fun(head);
58 printf(’’\nThe list after in-verting:\n’’);
59 outlist(head);
60 }
选项
答案
(1)next (2)NULL (3)r
解析
填空1:本空考查了为p赋初值,根据题目的要求是将带头结点的单向链表逆置可知,p的初值应该为h->next。
填空2:if判断语句表明当p等于什么时就要返回,因此只能当p等于NULL时返回,不用做后面的链表的逆置了。
填空3:把q的指针向后移动,才能实现将带头结点的单向链表逆置。因此本空填写r。
转载请注明原文地址:https://jikaoti.com/ti/GEi0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:main(){inti=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%d\n",i,j,k);}执行后的输出结果是______。
有以下程序:main(){chara,b,c,d;scanf("%c,%c,%d,%d",&a,&b,&c,&d);printf("%c,%c,%c,%c\n",a,b,c,d);}若运行时从键盘上
以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。main(){inti,a[20],sum,count;sum=count=0;for(i=0;i<20;i
有以下定义:#include<stdio.h>chara[l0],*b=a;不能给a数组输入字符串的语句是______。
有以下程序:main(){inta[]={2,4,6,8,10},y=0,x,*p;p=&a[1];for(x=1;x<3;x++)y+=p[x];printf("%d\n",y);}
以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。main()/*Beginning*/{intr;floats;scanf("%d",&r);s=*π*r*r*r;printf("
数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流;【】和处理过程。
结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、【】和限制使用goto语句。
随机试题
刘某是一位医生,她经常利用周末时间在自己居住的社区参与志愿服务,为小区中有需要的老年病人提供服务。这种情况是属于社区照顾模式中的()。
风湿性关节炎而无明显心肌炎者选用风湿性心脏炎者选用
始基囊肿属于
中标人不履行与招标人订立合同的,下列表述正确的是( )。
对某多层住宅建筑外墙保温及装饰工程施工现场进行检查,发现该建筑外保温材料按设计要求采用了燃烧性能为B2级的保温材料。下列外保温系统施工做法中不符合规定的是()。
下列有关资产组及其减值的说法中,正确的有()。
技术编辑的主要职责包括()等。
在施测CRT时,对测验指导语的正确描述是()。
给定资料1.2014年4月11日,L市城区唯一的供水企业——威立雅水务集团公司的出厂水及自流沟水样被检测出苯含量严重超标。当地政府立即作出回应,在16时30分举行的新闻发布会上表示:“L市主城区自来水未受到很大影响,但并不建议市民24小时内饮用
下列关于诉讼时效的说法正确的是()
最新回复
(
0
)