首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和程序,回答下列问题,将解答填入答题纸的对应栏内。 【说明】 在开发某嵌入式系统时,设计人员根据系统要求,分别编写了相关程序,其中: 【程序1】是李工编写的一个数据交换子程序。 【程序2】是赵工编写的一段利用递归方法判别
阅读下列说明和程序,回答下列问题,将解答填入答题纸的对应栏内。 【说明】 在开发某嵌入式系统时,设计人员根据系统要求,分别编写了相关程序,其中: 【程序1】是李工编写的一个数据交换子程序。 【程序2】是赵工编写的一段利用递归方法判别
admin
2013-01-19
52
问题
阅读下列说明和程序,回答下列问题,将解答填入答题纸的对应栏内。
【说明】
在开发某嵌入式系统时,设计人员根据系统要求,分别编写了相关程序,其中:
【程序1】是李工编写的一个数据交换子程序。
【程序2】是赵工编写的一段利用递归方法判别链表表示的两个数据结构是否相等的程序,若相等则返回值为1,否则返回为0。判别的准则是若两个链表的首指针相等,则相等;否则进行内部元素比较,元素中的itemid表示后面联合体un的有效性,itemid为0时,联合体un里面的data项有效,否则联合体un中的link项有效。
【程序1】
#include
swap(int x,int y){
int t;
t=x;
x=y;
y=t;
}
main() {
int a,b;
a=3;
b=4;
swap(a,b);
printf(“%d, %d\n”,a,b);
}
【程序2】
typedef struct Item{
int itemid;
union{
char data;
struct Item*link:
}un;
struct Item*nextItem:
}ItemNode;
int EqualItem(ItemNode *x,ItemNode *y) {
int res;
if(x=y) return 1;
if(
(1)
){
if(
(2)
) {
if(x->itemid==0) {
res=
(3)
}
elSe {
res =
(4)
}
if (res) {
return
(5)
}
}
}
return 0;
}
仔细阅读并分析【程序2】中的C语言代码,完成其中(1)~(5)空白填空,将答案填入答题纸的对应栏内。
选项
答案
(1)x!=NULL&&y!=NULL (2)x->itemid==y->itemid (3)x->un.data==y->un.data (4)Equalltem(x->un.link,y->un.link); (5)Equalltem(x->nextItem.y->nextItem);
解析
该段C语言程序是一段利用递归方法判别链表表示的两个数据结构是否相等的程序,若相等则返回值为1,否则返回为0。判别的准则是若两个链表的首指针相等,则相等;否则进行内部元素比较,元素中的itemid表示后而联合体un的有效性,itemid为0时,联合体un里面的data项有效,否则联合体un中的link项有效。该程序具体如下:
如果x==y,则返回1,表示断定两个数据实际指向是同一地方,当然相等;
如果x和y都不为空则继续,否则返回0;
如果x->itemid==D y->itemid,则继续,否则返回0;
如果x->itemid==0,则若x->un.data==y->un.data,res=1,否则res==0;
如果x->itemid不等于0,联合体un中的link项有效,递归调用Equalltem(x->un.link,y->un.link),继续判断:
如果res=1,也就是x->un.data==y->un.data,则递归调用EqualItem(x.>nextItem,y->nextItem),判断下一级链表:
如果res=0,也就是x->un.data不等与y->un.data,则即可断定两个数据不相等,返回为0。
转载请注明原文地址:https://kaotiyun.com/show/vhWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
某数据库应用系统在运行过程中,发现随着数据量的不断增加,有部分查询业务和数据更新业务执行耗时越来越长。经分析,这些业务都与表Tablel有关。假设Tablel有30多个字段,分别为(Key,A2,A2,…Am,B1,B2,…Bn)。执行频度较高的查询业务都
给定关系R(A,B,C,D,E)与S(B,C,F,G),那么与表达式π2,4,6,7(σ2<7(RS))等价的SQL语句如下:SELECT(41)________________FROMR,SWHERE(42)______________
在下列机制中,(23)________________是指过程调用和响应调用所需执行的代码在运行时加以结合;而(24)________________是过程调用和响应调用所需执行的代码在编译时加以结合。
Redis是一种NoSQL数据库,具体地说,是(70)________________存储数据库。
以下对存储过程的叙述中,不正确的是(53)________________。
给定关系R(A,B,C,D)与S(C,D,E,F),则RxS与RS操作结果的属性个数分别为(39);与表达式πr2,3,4(δ2
并发操作可能带来的数据不一致性有(52),解决的办法是并发控制,主要技术是(53)。(52)
B-树是一种平衡的多路查找树。以下关于B-树的叙述中,正确的是()。
设备驱动程序是直接与()打交道的软件模块。
以下关于系统原型的叙述中,不正确的是()。
随机试题
不符合中毒型细菌性痢疾的特点是
下列细支气管肺泡癌X线表现叙述错误的是
下列关于波浪理论原理应用的说法中,正确的有()。Ⅰ.上升阶段的八个过程,也称为8浪过程Ⅱ.第一浪、第三浪和第五浪称为“上升主浪”Ⅲ.1到5浪走完之后,继续上涨1浪Ⅳ.第二浪和第四浪称为是对第一浪和第三浪的“调整浪”
试论确定研究课题的基本要求,并简要说明应如何进行选题。
规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:使字符串的前导*号不得多于n个,若多于n个,则删除多余的*号;若少于或等n个,则不做处理,字符串中间和尾部的*号不删除。例如,字符串中的内容为:*******A*BC*DEF*G***
在关系数据库中,用来表示实体间联系的是()。
下列语句中,错误的是()。
在考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计了表对象“tEmp”、窗体对象“fEmp”、宏对象“mEmp”和报表对象“rEmp”。同时,给出窗体对象“fEmp”的“加载”事件和“预览”及“打印”两个命令按钮的单击事件代码,试按以
Themicroscopeopeneduptomananotherstrangenewworld:aworldofthingstoonearandsmallforanyone______thescientistto
Forthispart.youareallowedthirtyminutestowriteAnApplicationLetter.Youshouldwriteatleast120followingtheoutlin
最新回复
(
0
)