1、设有字符串变量String A =“”,B=“MULE”,C=“OLD”,D=“MY” ; 请计算下列表达式
(1) D+C+B
(2) B.substr(3,2)
(3) A.strlength()
提示:系统基于字符匹配来判定答案,所以您的3个答案本身不要出现空格,答案之间用空格分开。
1.字符串连接
2.从第3位开始取2个字符,但是'MULE'第三位及之后只有一位字符,所以答案为E
3. A是空串
答案: MYOLDMULE E 0
2、S=“S1S2…Sn”是一个长为n的字符串,存放在一个数组中,编程序将S改造之后输出。
1.将S的所有第偶数个字符按照其原来的下标从大到小的次序放在S的后半部分;
2.将S的所有第奇数个字符按照其原来的下标从小到大的次序放在S的前半部分;
例如:S=‘ABCDEFGHIJKL’,则改造后的S为‘ACEGIKLJHFDB’。则 S=’algorithm’, 改造后为____________
前半部分为,algorithm奇数的字符,即agrtm;后半部分为Algorithm偶数字符下标从大到小次序,即hiol,故结果是agrtmhiol。
答案: agrtmhiol
3、设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为( )(单选)
A、求子串 Seeking substring |
B、联接 Concatenation |
C、匹配 Matching |
D、求串长 Seeking length |
A.求子串:求子串是给定首字符在原字符串中位置和子串长度,输出子串的运算
B.联接:是把两个字符串连接到一起输出新字符串的运算
C.匹配:是求子串在父串中位置的运算
D.求串长:求字符串的长度
4、若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,
执行 concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2)))
注意:substr(S,i,j)是对字符串S的下标为i开始取j个字符,这里的下标是从0开始的(单选)
A、ABC###G0123 |
B、ABCD###2345 |
C、ABCD###1234 |
D、ABC###G2345 |
substr(S1,length(S2),length(S3))即substr(S1,4,3)),从下标4开始取s1三个字符,即EFG,replace(S1,substr(S1,length(S2),length(S3)),S3)即replace(S1,‘EFG',’###‘),故结果为’ABCD###‘,而,substr(S4,index(S2,‘8’),length(S2))即,substr(S4,1,4)(其中index(S2,‘8’)指的是找s2中第一个’8‘的下标),故为’1234‘。故最后结果为ABCD###1234
答案: C
5、在字符{A, C, G, T}组成的DNA序列中,A和T、C和G是互补对。判断一个DNA序列中是否存在互补回文串(例如,ATCATGAT的补串是TAGTACTA,与原串形成互补回文串)。下面DNA序列中存在互补回文串的是:(多选)
A、CTGATCAG |
B、AATTAATT |
C、TGCAACGT |
D、CATGGTAC |
E、GTACGTAC |
F、AGCTAGCT |
C.TGCAACGT : 互补串为ACGTTGCA,不是原串回文。
D.CATGGTAC : 互补串为GTACCATG,不是原串回文。