首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是将带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
给定程序中,函数fun的功能是将带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
admin
2019-03-06
39
问题
给定程序中,函数fun的功能是将带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#define N 5
typedef struct node {
int data;
struct node *next;
} NODE;
void fun(NODE *h)
{NODE *p, *q, *r;
/********** found**********/
P = h->【1】;
/********** found**********/
if (p==【2】__) return;
q = p->next;
p->next = NULL;
while (q)
{ r = q->next; q->next = p;
/********** found**********/
p = q; q =【3】;
}
h->next = p;
}
NODE *creatlist(int a[])
{NODE *h,*p,*q; int i;
h= (NODE *)malloc(sizeof(NODE));
h->next = NULL;
for(i=0; i
{q=(NODE *)malloc(sizeof(NODE));
q->data=a
;
q->next = NULL;
if(h->next == NULL)
h->next = p = q;
else {p->next = q; p = q;}
}
return h;
}
void outlist(NODE *h)
{NODE *p;
p = h->next;
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]={2,4,6,8,10};
head=creatlist(a);
printf("\nThe original list:\n");
outlist(head);
fun(head);
printf("\nThe list after inverting:
\n");
outlist(head) ;
}
选项
答案
(1)next (2)0或NULL (3)r
解析
函数fun的功能是将带头结点的单向链表逆置。第一空:“p=h->1;”对结点p进行初始化,由审题分析可知,p初始化为链表的第二个结点,即p->next,故第一空处应为“next”。第二空:“if(p==【2】)return;”如果链表只有一个结点,无需逆置,即第二空处为“0”或“\0”或“NULL”。第三空:循环内完成结点的指针指向前一个结点,“r=q一>next;”r已经指向q的下一个结点,“q->next=p;”将q结点指向链表的前一个结点,“p=q;”是将p结点往后移动一个结点位置,第三空处是q结点往后移动一个结点位置,即第三空处为“r”。
转载请注明原文地址:https://jikaoti.com/ti/gkf0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若变量已正确定义并赋值,对库函数错误调用的是()
有如下程序:#defineN2#defineMN+1#defineNUM2*M+1main(){inti;for(i=1;i<=NUM;i++)printf("%d\n",i);}该
有以下函数intaaa(char*s){char*t=S;while(*t++);t--;return(t-s);}以下关于aaa函数的功能的叙述正确的是
main(){floatx=123.456;printf("%-5.2f\n",x);}以上程序输出的结果是______。
程序的运行结果为【】。main(){charc1=’a’,c2=’b’,c3=’c’;printf("a%cb%c\tc%c\n",c1,c2,c3);}
阅读下述程序段:y=-1;if(x!=0)if(x>0)y=1;elsey=0;该程序段所描述的数学关系是()
执行以下程序后,a,b的值分别为main(){ina,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(*p1)/(*p2)+7;printf("a=%d\n",a);
软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指
下面程序的功能是将字符串a下标值为偶数的元素由小到大排序,其他元素不变,请填空。#include<stdio.h>main(){chara[]="labchmfye",t:int1,j;for(i=0;
随机试题
简述柯尔伯格的儿童道德判断发展阶段。
胎儿的脐静脉在肝内的小分支(),与后腔静脉相连
某砌体建筑物的地基基础设计等级为丙级,采用墙下钢筋混凝土条形基础,基础尺寸如图5.9.4所示,基础顶面处相应于作用的标准值为:永久荷载轴压力FGk=300kN/m,可变荷载轴压力FQk=136kN/m,可变荷载的组合值系数为0.7,基底以上基础与土的平均重
案例E钢铁集团所属炼钢股份公司炼钢车间主要设备有120t氧气顶吹转炉、氧枪升降机构、3.2MPa氧气管道、80t冶金起重机2台、出钢台车、测温取样装置、真空槽、车间东西两侧各有1部物料升降机,配合若干台叉车。2003年4月23日0
列入《出入境检验检疫机构实施入境验证的进口商品目录》内的进口商品,海关在办理通关手续时需加验检验检疫机构签发的《入境货物通关单》。()
我国商业银行的会计资本包括()。
Iconsidermyselfsomethingofanexpertonapologies.Aquiettemperhas【C1】______mewithplentyofopportunitiestomakethem.
Noonecan【C1】______HowardSchultzofinactionsincehereturnedaschiefexecutiveofStarbucks,thefirmhebuiltintoamulti
销售部助理小王需要根据2012年和2013年的图书产品销售情况进行统计分析,以便制订新一年的销售计划和工作任务。现在,请你按照如下需求,在文档“ExeeLxl文”中完成以下工作并保存。在“销售订单”工作表的“图书编号”列中,使用VLOOKUP函数填
Questions27-30Foreachquestion,onlyONEofthechoicesiscorrect.Writethecorrespondingletterintheappropriateboxon
最新回复
(
0
)