首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fum的功能是将不带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
给定程序中,函数fum的功能是将不带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
admin
2019-03-06
45
问题
给定程序中,函数fum的功能是将不带头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为: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;
/**********found**********/
___1___fun(NODE *h)
{NODE *P,*q,*r;
P=h;
if(P==NULL)
return NULL;
q=P->next;
P->next=NULL;
while(q)
{
/**********found**********/
r=q->___2___;
q->next=P;
p=q;
/**********found**********/
q=___3___;
}
return P;
}
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]={2,4,6,8,1 0);
head=creatlist(a);
printf("\nThe original list:\n");
outlist(head);
head=fun(head);
printf("\nThe list after
inverting:\n");
outlist(head);
}
选项
答案
(1)NODE* (2)next (3)r
解析
第一空:主函数内fun函数调用形式是“head=fun(head);”,变量head是NODE指针,故fun函数的返回值是NODE指针,即第一空处应为“NODE*”。
第二空:while循环完成链表的倒置,在循环体内,p、q和r指针分别指向三个连续的结点,p指针在最前,然后是q指针,r指针在最后。将q指针指向p结点,p和q两个结点倒置,然后p、q和r再往后移动一个结点,继续对其他结点逆置。因此第二空处r是q的后面一个结点,故第二空处为“next”。
第三空:由第二空的分析可知,第三空处是将q结点往后移动一个结点位置,故第三空处为“r”。
转载请注明原文地址:https://jikaoti.com/ti/Frf0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
执行以下程序后输出的结果是______。main(){inty=10;do{y--;}while(--y);printf("%d\n",y--);}
请选出以下程序的输出结果()。#include<stdio.h>sub(int*s,inty){staticintt=3;y=s[t];t--;}main(){int
有以下函数intaaa(char*s){char*t=S;while(*t++);t--;return(t-s);}以下关于aaa函数的功能的叙述正确的是
有以下程序#includemain(){intC=O,k;for(k=1;k
可以在C语言程序中用做用户标识符的一组标识符是()。
C语言规定,在一个源程序中,main函数的位置()。
若给fun函数的形参s传送字符串:"abc-6354abc",则函数的返回值是()。(字符串中包括空格)longfun(charS[]){longn;intsign;for(;isspace(*s)||islow
有以下函数:mtaaa(char*s){char*t=s;while(*t++);t--;return(t-s);}以下关于aaa函数的功能的叙述正确的是()。
若有定义:“inta=10,b=9,C=8;”接着顺序执行下列语句后,变量b中的值是________。c=(a-=(b-5)):c=(a%11)+(b=3);
随机试题
便秘的发生常与下列哪些因素有关
下列关于医疗机构对临床用血的做法,正确的是
下列哪些情形属于民法上的共同共有关系:
2016年10月20日,某市国税局稽查局在一次税务检查时,发现甲公司于2011年3月至2015年5月期间,以15万元价格从乙公司购买增值税专用发票100份,在没有货物交易的情况下,甲公司向5人开具增值税专用发票共60多份,涉税金额250多万元。根据举报查实
在贷款材料中,()贷款,借款人应出具进口方银行开立的信用证。
某企业上年度资金平均占用额为3000万元,经分析,其中不合理部分500万元,预计本年度销售增长6%,资金周转加速2%,则按照因素分析法预测的本年度资金需要量为()万元。
松鼠妈妈采松果,晴天每天可采20个,雨天每天只能采12个。它一连几天共采了112个松果,平均每天采14个。这几天中有几天下雨?()
Whatdayistoday?
Forthispart,youareallowed30minutestowriteanessaycommentingonthesaying"Ineveryend,thereisalsoabeginning."
SavingOurPlanetA)Inthelongview,thehumanrelationshipwithforestshasbeenoneofbrutaldestruction,butevenitc
最新回复
(
0
)