首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明和C代码,应填入(n)处。 [说明] 假设设A和B均为顺序表,A’和B’分别为A和B中除去最大共同前缀后的子表(例如,A=(x,y,y,z,x,z),B=(x,y,y,z,y,x,x,z),则两者中最大的共同前缀为(x,y,y
阅读下列函数说明和C代码,应填入(n)处。 [说明] 假设设A和B均为顺序表,A’和B’分别为A和B中除去最大共同前缀后的子表(例如,A=(x,y,y,z,x,z),B=(x,y,y,z,y,x,x,z),则两者中最大的共同前缀为(x,y,y
admin
2009-02-15
64
问题
阅读下列函数说明和C代码,应填入(n)处。
[说明]
假设设A和B均为顺序表,A’和B’分别为A和B中除去最大共同前缀后的子表(例如,A=(x,y,y,z,x,z),B=(x,y,y,z,y,x,x,z),则两者中最大的共同前缀为(x,y,y,z),在两表中除去最大共同前缀后的子表分别为A’=(x,z)和B’=(y,x,x,z)。若A’=B’=空表,则A=B;若A’=空表,而 B’!=空表,或者两者均不为空表,且A’的首先小于B’的首元,则A<B;否则A>B。
下面程序实现了比较A、B大小的算法。
[C程序]
#include<stdio.h>
#include<stdlib.h>
typedef struct linknode
{
int data;
struct linknode *next;
}node:
node *creatlist ( ) /*建立单链表*/
{
node*head, *r, *s;
int x;
head= (node *) malloc (sizeof (node)); /建立单链表的头结点head*/
r=head;
printf ("输入系列整数,以O标志结束\n");
scanf ("%d", &x);
while (x!=O) /*x==O则退出while循环*/
{
s=(node*) malloc (sizeof (node));
s->data=x;
r->next=s;
s->next=NULL;
r=s;
scanf ("%d", &x);
}
r->next=NULL;
s=head;
(1);
Free (s);
return head;
}
void subs ( )
{
node*p, *p1, *p2, *q, *heada, *headb;
heada=creatlist ( ) ;
headb=creatlist ( ) ;
p=heada;
p1=p; /*p1指向p所指结点的前一个结点,开始时均缀向头结点*/
while (p!=NULL )
{
q=headb;
while (q!=NULL&&q->data!=p->data)
q=q->next;
if ((2)) {
if (p==heada)
{
(3);
p1=heada;
}
else if (p->next==NULL) p1->next=NULL; /*该结点为最后一结点,删除*/
else p1->next=p->next;
p2=p->next;
(4);
free (p);
(5);
}
else /*p所指结点的元素不在B中,则直接下移p*/
{
p1=p;
(6);
}
}
p=heada; /*显示删除后的结果*/
if (p==NULL)
printf ("两集合机减的结果为空\n");
else
printf ("两集合相减的结果\n");
while (p!=NULL)
{
printf ("%d", p->data);
p=p->next;
}
}
void main ( )
{
subs ( ) ;
}
选项
答案
(1)head=head->next (2)q!=NULL (3)heada=heada->next; (4)p->next=NULL (5)p=p2 (6)p=p->next
解析
本题实现了对顺序表进行比较操作的算法。根据功能要求,分析代码,可知(1)应该为删除头结点; (2)为判定p所指结点是否在B中,p所指结点的元素在B中则要删除;(3)该结点为头结点,要删除;(4)清除p所指结点;(5)p2作为临时变量,保存p所指结点的下一个结点;(6)指向下一节点。
转载请注明原文地址:https://kaotiyun.com/show/fuDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
若有关系R(A,B,C,D,E)和S(B,C,F,G),则R与S自然联结运算后的属性列有(17)个,与表达式π1,3,6,7(σ3<6(RS))等价的SQL语句如下:SELECT(18)FROM(19)WHERE(20);
兼容性测试的测试范围包括___________。①硬件兼容性测试②软件兼容性测试③数据兼容性测试④平台兼容性测试
软件测试的对象不包括________。
在面向对象分析和设计中,用类图给出系统的静态设计视图,其应用场合不包括___________(45)。下图是一个UMI,类图,其中类University和类School之间是___________(46)关系,类Person和类PersonRecord之间
以下关于模块耦合关系的叙述中,耦合程度最低的是__________(39),其耦合类型为___________(40)耦合。(40)
在结构化分析方法中,利用分层数据流图对系统功能建模。以下关于分层数据流图的叙述中,不正确的是___________(32)。采用数据字典为数据流图中的每个数据流、文件、加工以及组成数据流或文件的数据项进行说明,其条目不包括____________(33)。
如果在查找路由表时发现有多个选项匹配,那么应该根据___________(25)原则进行选择。假设路由表有4个表项如下所示,那么与地址139.17.179.92匹配的表项是____________(26)。(26)
零件关系P(零件名,条形码,供应商,产地,价格)中的(12)属性可以作为该关系的主键。查询产于西安且名称为“P2”的零件,结果以零件名、供应商及零件价格分列表示,对应的SQL语句为:SELECT零件名,供应商,价格FROMPWHE
某企业职工关系EMP(E_no,E_name,DEPT,E_addr,E_tel)中的属性分别表示职工号、姓名、部门、地址和电话;经费关系FUNDS(E_no,E_limit,E_used)中的属性分别表示职工号、总经费金额和已花费金额。若要查询部门为“开
系统交付后,修改偶尔会出现乱码的问题,该行为属于________________维护。
随机试题
Whichisnottrueofidioms?()
女,68岁。有肝硬化病史8年余,近1年来常出现肝区疼痛、乏力、发热等症状,抽血查甲胎蛋白增高。2小时前突然发生腹部剧痛,有压痛、反跳痛,并伴有腹膜刺激征,血压下降,腹腔穿刺有大量不凝的血性液体。患者突发性腹痛最可能是由于
患者,男性,50岁。活动时胸闷、胸痛2年余,加重12小时入院。查体:BP134/82mmHg,P72次/分,R20次/分,双肺下野可闻及湿啰音,心脏听诊未闻及病理性杂音,双下肢无水肿。心肌酶谱升高,心电图示:急性广泛前壁心肌梗死,心房颤动。入院1小时突然出
男性,20岁。2个月来中上腹疼痛,痛向背部放射,伴反酸与夜间痛,以往亦有类似的发作,曾先后有3次黑粪。上消化道出血最常见的病因为
石膏是以()为主要成分的气硬性胶凝材料。
根据增值税法律制度的规定,下列各项中,免征增值税的是()。
杨老师在上音乐课的时候,若是希望学生掌握乐理知识,则会把重点放在理论讲授上:若是想教学生演奏技巧,则会要求学生现场弹奏并予以指点。可见,教育方式的选择取决于()。
下列诗文、作者、朝代对应不正确的是()。
Peekthroughtheinspectionwindowsofthenearly100three-dimensional(3D)printersquietlymakingthingsatRedEye,acompany
假如你是某旅馆接待员,有外宾来你的旅馆住宿,请用英语把该旅馆的情况向他们作一个介绍。(1)房间位置:餐厅在一层;会议室、小舞厅在二层;单人和双人房间在三、四层;(2)房内设备:各房间有浴室并装有电视和电话;(3)租房价格:双人房间每晚100元,单人间
最新回复
(
0
)