首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 [说明1] 递归函数is elem(char ch,char*set)的功能是判断ch中的字符是否在set表示的字符集合中,若是,则返回1,否则返回0。 [C代码1] int i
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 [说明1] 递归函数is elem(char ch,char*set)的功能是判断ch中的字符是否在set表示的字符集合中,若是,则返回1,否则返回0。 [C代码1] int i
admin
2017-09-14
60
问题
阅读以下说明和C代码,填补代码中的空缺,将解答填入答题纸的对应栏内。
[说明1]
递归函数is elem(char ch,char*set)的功能是判断ch中的字符是否在set表示的字符集合中,若是,则返回1,否则返回0。
[C代码1]
int is—elem(char ch,char*set)
{
if(*set==‘\0’)
return 0;
else
if ( (1) )
return 1;
else
return is—elem( (2) );
}
【说明2】
函数char*combine(char*setA,char*setB)的功能是将字符集合A(元素互异,由setA表示)和字符集合B(元素互异,由setB表示)合并,并返回合并后的字符集合。
【C代码2】
char* combj ne(char*setA,char*setB)
{
int i, lenA, lenB, lenC;
lenA=strlen(setA);
lenB=strlen(setB);
char*setC= (char*)malloc(1enA+lenB+1);
if (!setC)
return NULL ;
strncpy(setc, setA, lenA); //将setA的前lenA个字符复制后存入setc
lenc= (3);
for (i=0; i
if((4) ) //调用is—elem判断字符是否在setA中
setC[1enC++] =setB
;
(5)=‘\0’; //设置合并后字符集的结尾标识
return SetC;
}
选项
答案
(1)set[0]=ch 或*set=ch或等价形式 (2)ch,set+1或ch,++set或等价形式 (3)lenA或等价形式 (4)!iselem(setB[i],setA) 或等价形式 (5)setC[1enC] 或*(setC+lenC)或等价形式
解析
本题考查C程序设计的基本结构和运算逻辑。
函数is_elem(char ch,char*set)的功能是判断给定字符是否在一个字符串中,其运算逻辑是:若ch所存的字符等于字符数组set的第一个字符,则结束;否则再与set中的第二个字符比较,依此类推,直到串尾。因此空(1)处应填入“set【0】=ch”或其等价表示。题目要求该函数以递归方式处理,并在空(2)处填入递归调用时的实参。显然,根据函数is elem的首部信息,递归调用时第一个参数仍然为“ch”,第二个参数是需给出set中字符串的下一个字符的地址(第一次递归时为字符串第二个字符的地址,第二次递归时实际为字符串第三个字符的地址,由于传进来时与ch进行比较的字符都是*set,那么下一个字符就都表示为set.+1),即为&set[1],或者为set+1,所以空(2)处应填入参数“ch,set+1”或其等价表示。
函数combine(char*setA,char*setB)的功能是将字符集合A和字符集合B合并,并返回合并后的字符集合,处理思路是:现将A集合的元素全部复制给集合C(stmcpy(setC,setA,lenA)),然后按顺序读取集合B中的字符,判断其是否出现在A中。如果来自集合B的字符已经在A中,则忽略该字符,否则,将其加入集合C。
变量lenC表示集合C的元素个数,其初始值应等于lenA,因此空(3)应填入“lenA”。
根据注释,空(4)应填入“!is_elem(setB
,setA)”,判断来自集合B的元素setB
是否在集合setA中。空(5)处的代码作用是设置字符数组setC的尾部字符“\0”,由于lenC的值跟踪了该集合中元素数目的变化,其最后的值正好表示了setC的元素个数,所以该空应填入“setC[1enC]”或其等价表示。
转载请注明原文地址:https://kaotiyun.com/show/l9jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel2007中,若在单元格A1中输入函数“=MID(“RUANKAO”,1,4)”,按回车键后,则A1单元格中的值为()。
某商场记录(统计)销售情况的数据库中,对每一种商品采用了国家统一的商品编码。这种做法的好处不包括(11)________________。
据某地区统计,今年中小学生中肥胖学生约占10%,而且,肥胖学生人数正在以8%的速度增长。假设近年中小学生的总量变化不大,据此我们可以推算出,明年该地区中小学生中肥胖学生的比例约为(64)。
在Excel2007中,若在单元格A1中输入函数“=ROUNDUP(3.1415926,2)”,按回车键后,则A1单元格中的值为______。
在Excel2007的A1单元格中输入函数“=LEFT(“CHINA”,1)”,按回车键后,则A1单元格中的值为()。
在Word中可以用“编辑”→“定位”命令对需要寻找的位置进行快速定位,(48)不属于定位目标。
回收的问卷调查表中,很多表都有一些没有填写的项。处理缺失值的办法有多种,需要根据实际情况选择使用。对于一般性的缺值项,最常用的有效方法是(66)。
某学校一个教师可以讲授多门课程,一门课程也可以由多个教师讲授,则教师与课程之间的关系类型为()。
下面记录的是某班36人期末考试的数学成绩:971009596100879610089100936999891008188
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。为满足公司要求,通常选用什么类型的信息插座?
随机试题
扩孔的进给量为钻孔的()倍。
简述创建渠道的途径。
奶牛产后65天内未见明显的发情表现,直肠检查卵巢上有一小的黄体遗迹,但无卵泡发育,卵巢的质地和形状无明显变化。该牛可能患有的疾病是
下列选项中,()属于进口从属费用。
施工进度计划用()表示,关键线路用粗线条(或双线)表示。
地方性法规与部门规章之间对同一事项的规定不一致时,()。
企业所得税的征税对象有()。
在达尔克罗兹的音乐教育体系中,()由于其独特的创造性和科学性早已被人们公认为是卓有成效的音乐教育手段,并成为相对独立的学习领域。
结合材料回答问题:材料1我国著名的历史学家胡绳先生的著作《中国共产党七十年》,他在这部著作中对辛亥革命有这样中肯的评价:“中华民国的成立并没有给人们带来预期的民族独立、民主和社会进步”……“如果脱离中国近现代革命史的全过程来看,也许会把
Today,theworldwidewebcanbeusedbothtosearchinformationandtomakeit【C1】______toothers.Information【C2】______onwebp
最新回复
(
0
)