- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
一、问答题
1、阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏
。
[说明]
下面流程图的功能是:在给定的两个字符串中查找最长的公共子串,输出该公共子
串的长度L及其在各字符串中的起始位置(L=0时不存在公共字串)。例如,字符串T
helightisnotbrighttonight与Tonightthelightisnotbright的最长公共子串为he
lightisnotbright,长度为22,起始位置分别为2和10。
设A[1:M]表示由M个字符A[1],A[2],…,A[M]依次组成的字符串;B[1:N]表示由
N个字符B[1],B[2],…,B[N]依次组成的字符串,M≥N≥1。
本流程图采用的算法是:从最大可能的公共子串长度值开始逐步递减,在A、B字
符串中查找是否存在长度为L的公共子串,即在A、B字符串中分别顺序取出长度为
L的子串后,调用过程判断两个长度为L的指定字符串是否完全相同(该过程的流程
略)。
[流程图]
参考答案:
N或rnin(M,N)
M-L+1
N-L+1
L-1
L,I,J
解析:
本题考查对算法流程图的理解和绘制能力。本题的算法用于查找两个字符串中的最
长公共子串,并输出其长度及在各自字符串中的起始位置。
根据说明和流程图的分析,我们可以得出以下解释:
1.由于字符串A和B的长度分别为M和N,且M≥N≥1,所以它们的公共子串长
度L必然小于或等于N。因此,初始时,应将min(M,N)或N送L,表示开始
查找的最大可能的公共子串长度。所以(1)处填写N或min(M,N)。
2.对于A串,长度为L的子串的起始下标可以从1开始直到M-
L+1。因此,(2)处应填写M-L+1或其等价形式。
3.对于B串,同样的逻辑,长度为L的子串的起始下标可以从1开始直到N-
L+1。所以,(3)处应填写N-L+1或其等价形式。
4.如果两个子串比较的结果不匹配,则需要继续执行循环。此时需要减小L的
值,所以(4)处应填写L-1。
5.如果找到了匹配的子串,即找到了最长公共子串,此时应输出公共子串的长
度L以及在A、B串中的起始位置I和J。所以,(5)处应填写L,I,J(顺序不
分先后)。
综上所述,答案应为:N或min(M,N);M-L+1;N-L+1;L-1;L,I,J。
2、阅读以下说明和C函数,填补函数代码中的空缺,将解答填入答题纸的对应栏
内。
[说明1]
函数f(doubleeps)的功能是:利用公式计算并返回π的近似值。
[C函数1]
doublef(double
eps)
{
doublen=1.0,
s=1.0,term=1.0,pi=0.0;
while(
fabs(term)>=eps
){
pi=pi+term;
n=______;
s=______;
term=s/n;
}
returnpi*4;
}
[说明2]
函数fun(char
*str)的功能是:自左至右顺序取出非空字符串str中的数字字符,形成一个十进制整
数(最多8位)。例如,若str中的字符串为iyt?67kp
f3g8d5.j4ia2e3p12,则函数返回值
[C函数2]
longfun(char
*str)
{
inti=0;
longnum:0;
char*p=str;
while(i<8______){
if(
*p>=0
*p<=9
){
num=______+*p-
0;
++i;
}
______;
}
returnnum;
}
参考答案:
n+2
-s或-1*s
*p!=\0或等价形式
num*10或等价形式
p++或等价形式
解析:
对于函数f(double
eps),其功能是计算π的近似值。根据题目中的
原创力文档


文档评论(0)