首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数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
58
问题
给定程序中,函数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://www.kaotiyun.com/show/CNDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:main(){inti=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%d\n",i,j,k);}执行后的输出结果是______。
以下程序中,函数SumColumMin的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。#defineM2#defineN4
以下程序通过函数SunFun求。这里f(x)=x2+1,由F函数实现。请填空。main(){printf("Thesum=%d\n",SunFun(10));}SunFun(intn){int
以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。main(){inti,a[20],sum,count;sum=count=0;for(i=0;i<20;i
已定义以下函数:fun(int*p){return*p;}该函数的返回值是______。
下列程序的功能是对输入的一行字符中的数字字符的字面值累加,输出此累加和,请填空。#include<stdio.h>#include<ctype.h>main(){charc;
数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流;【】和处理过程。
结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、【】和限制使用goto语句。
随机试题
Ifananimalismovedfromitshomeinthetropics(热带地区)toacoldclimate,itwilldieifitisnotkeptwarm.Andanimals【C1】
实质性脏器损伤包括()
《麦琪的礼物》运用的结构方法是【】
患者男,36岁。2周前发现右下后牙牙龈有小包,平时无明显不适。检查见右下第一磨牙咬合面深龋,穿髓孔探无感觉,叩诊(±),右下第二磨牙根尖处牙龈有瘘管开口,挤压有少许脓液溢出。X线片见右下第一磨牙近中根尖X线透射区不规则,边界模糊。主诉牙的治疗是
人身意外伤害医疗保险中,规定保险金额的方法有()。
(2009年卷一第63题)刘某提出一件有关发电机的发明专利申请,国家知识产权局以该发明不具备新颖性为由予以驳回。刘某不服,提出复审请求。专利复审委员会经审理发出复审通知书,指出该申请请求保护的技术方案违反了自然规律,不具备实用性。下列说法哪些是正确的?
讲信誉的最基本要求是()。
在适宜的温度、水分和CO2保证供应的情况下,测得不同植物光合作用量值(用环境CO2减少量来度量)如右图所示。下列四种叙述中不正确的是()。
科学决策正确与否取决于行政领导者个人的经验多少、知识水平高低和个人能力大小。()
()进口托收()付现交单()商会()关税
最新回复
(
0
)