如果一个串中相同的字符均在另一个串中出现,则说明前者是后者的子串。

如果一个串中相同的字符均在另一个串中出现,则说明前者是后者的子串。


参考答案和解析
B

相关考题:

如果一个串中的所有字符均在另一串中出现,则前者是后者的子串。() 此题为判断题(对,错)。

试题四(共 15分)阅读以下说明和C函数,将解答填入答题纸的对应栏内。【说明】函数del_substr(S,T)的功能是从头至尾扫描字符串 S, 删除其中与字符串T相同的所有子串,其处理过程为:首先从串 S 的第一个字符开始查找子串 T,若找到,则将后面的字符向前移动将子串T覆盖掉,然后继续查找子串T,否则从串S的第二个字符开始查找,依此类推,重复该过程,直到串S的结尾为止。该函数中字符串的存储类型 SString定义如下:typedef struct {char *ch; /*串空间的首地址*/int length; /*串长*/}SString;【C函数】void del_substr(SString *S, SString T){int i, j;if ( S-length 1 || T.length 1 || S-length T.length )return;i = 0; /* i为串S中字符的下标 */for ( ; ; ) {j = 0; /* j为串T中字符的下标 */while ( i S-length j T.length ) { /* 在串S中查找与T相同的子串 */if ( S-ch[i]==T.ch[j] ) {i++; j++;}else {i = (1) ; j = 0; /* i值回退,为继续查找T做准备 */}}if ( (2) ) { /* 在S中找到与T相同的子串 */i = (3) ; /* 计算S中子串T的起始下标 */for(k = i+T.length; kS-length; k++) /* 通过覆盖子串T进行删除 */S-ch[ (4) ] = S-ch[k];S-length = (5) ; /* 更新S的长度 */}else break; /* 串S中不存在子串T*/}}

设有两个串T和P,求P在T中首次出现的位置的串运算称作()。 A、联接B、求子串C、字符定位D、子串定位

下列关于串的叙述中,正确的是()。 A.一个串的字符个数即该串的长度B.一个串的长度至少是1C.空串是由空格字符组成的串D.两个串若长度相同,则它们相等

●在字符串的模式匹配过程中,如果模式串的每个字符依次和主事中一个连续的字符序列相等,则称为匹配成功。如果不能在主串中找到与模式串相同的子串,则称为匹配失败。在布鲁特—福斯模式匹配算法(朴素的或基本的模式匹配)中,若主串和模式串的长度分别为n和m(且n远大于m),且恰好在主串末尾的m个字符处匹配成功,则在上述的模式匹配过程中,字符的比较次数最多为(57)。(57) A. n*mB. (n-m+1)*mC. (n-m-1)*mD. (n-m)*n

函数String(n,字符串)的功能是( )。A.把数值型数据转换为字符串B.返回由n个字符组成的字符串C.从字符串中取出n个字符D.从字符串中第n个字符的位置开始取子字符串

在Excel中输入字符串时,若该字符串的长度超过单元格的显示宽度,则超过的部分有可能( )。A.被截断删除B.继续超格显示C.出现错误提示D.作为另一个字符串存入右侧相邻单元

阅读以下说明和流程图,填补流程图中的空缺(1)~(5),将解答填入对应栏内。【说明】下面流程图的功能是:在已知字符串A中查找特定字符串B,如果存在,则输出B串首字符在A串中的位置,否则输出-1。设串A由n个字符A(0),A(1),…,A(n-1)组成,串B由m个字符B(0),B(1),…,B(m-1)组成,其中n≥m>0。在串A中查找串 B的基本算法如下:从串A的首字符A(0)开始,取子串A(0)A(1)…A(m-1)与串B比较;若不同,则再取子串A(1)A(2)…A(m)与串B比较,依次类推。例如,字符串“CABBRFFD”中存在字符子串“BRF”(输出3),不存在字符子串“RFD”(输出-1)。在流程图中,i用于访问串A中的字符(i=0,1,…,n-1),j用于访问串B中的字符(j=0,1,…,m-1)。在比较A(i)A(i/1)…A(i+m-1)与B(0)B(1)…B(m-1)时,需要对 A(i)与B(0)、A(i+1)与B(1)、…、A(i+j)与B(j)等逐对字符进行比较。若发现不同,则需要取下一个子串进行比较,依此类推。【流程图】

读以下说明和流程图,回答问题将解答填入对应栏。[说明]下面的流程图,用来完成求字符串t在s中最右边出现的位置。其思路是:做一个循环,以s的每一位作为字符串的开头和t比较,如果两字符串的首字母是相同的,则继续比下去,如果一直到t的最后一个字符也相同,则说明在s中找到了一个字符串t;如果还没比较到t的最后一个字符,就已经出现字符串不等的情况,则放弃此次比较,开始新一轮的比较。当在s中找到一个字符串t时,不应停止寻找(因为要求的是求t在s中最右边出现位置),应先记录这个位置pos,然后开始新一轮的寻找,若还存在相同的字符串,则更新位置的记录,直到循环结束,输出最近一次保存的位置。如果s为空或不包含t,则返回-1。注:返回值用pos表示。[问题]将流程图的(1)~(5)处补充完整。

● 在字符串的模式匹配过程中,如果模式串的每个字符依次和主事中一个连续的字符序列相等,则称为匹配成功。如果不能在主串中找到与模式串相同的子串,则称为匹配失败。在布鲁特—福斯模式匹配算法(朴素的或基本的模式匹配)中,若主串和模式串的长度分别为n和m(且n远大于m),且恰好在主串末尾的m个字符处匹配成功,则在上述的模式匹配过程中,字符的比较次数最多为(57)。 A.n*m B.(n-m+1)*m C.(n-m-1)*m D.(n-m)*n

阅读下列说明和C函数,填补C函数中的空缺,将解答填入答案纸的对应栏目内。 【说明】 字符串是程序中常见的一种处理对象,在字符串中进行子串的定位、插入和删除是常见的运算。 设存储字符串时不设置结束标志,而是另行说明串的长度,因此串类型定义如下: typedef struct ﹛ Char *str; //字符串存储空间的起始地址 int length; //字符串长 int capacity; //存储空间的容量 ﹜SString;【函数1说明】 函数indexStr(S,T,pos)的功能是:在S 所表示的字符串中,从下标pos开始查找T所表示字符串首次出现的位置。方法是:第一趟从S中下标为pos、T中下标伟0的字符开始,从左往右逐个对于来比较S和T的字符,直到遇到不同的字符或者到达T的末尾。若到达T的末尾,则本趟匹配的起始下标pos为T出现的位置,结束查找;若遇到了不同的字符,则本趟匹配失效。下一趟从S中下标pos+1处的字符开始,重复以上过程。若在S中找到T,则返回其首次出现的位置,否则返回-1。 例如,若S中的字符为伟students ents,T中的字符串伟ent,pos=0,则T在S中首次出现的位置为4。 【C函数1】 int index Str(SString S ,SString T,int pos) ﹛ int i,j: i (S.length1||T.length1||pos+T.length-1) return-1; for(i=pos,j=0;iS.length jT.length;)﹛ if (S.str[i]==T.str[j])﹛ i++;j++; ﹜ else﹛ i=( 1 );j=0 ﹜ ﹜ if ( 2 )return i -T.length; return-1; ﹜ 【函数2说明】 函数 eraseStr(S,T}的功能是删除字符串S中所有与T相同的子串,其处理过程为: 首先从字符串 S 的第一个字符(下标为0)开始查找子串T,若找到〈得到子串在S中的起始位置),则将串 S 中子串T之后的所有字符向前移动,将子串T覆盖,从而将其删除,然后重新开始查找下一个子串T,若找到就用后面的宇符序列进行覆盖,重复上述过程,直到将S中所有的子串T删除。 例如,若字符串 S为 12ab345abab678、T为ab。第一次找到ab时(位置为2),将345abab678前移,S 中的串改为12345abab678 ,第二次找到ab时(位置为 5);将ab678前移,S中的串改为12345ab678,第三次找到ab时(位置为5);将678前移 ,S中的串改为12345678 。 【C函数2】 Void eraseStr(SString*S,SStringT) ﹛ int i; int pos; if (S-length1||T.length1||S-lengthT.length) return; Pos=0; for(;;)﹛ //调用indexStr在S所表示串的pos开始查找T的位置 Pos=indexStr( 3 ); if(pos=-1) //S所表示串中不存在子串T return; for(i=pos+T.length;iS-length;i++) //通过覆盖来删除自串T S-str[( 4 )]=S-str[i]; S-length=( 5 ); //更新S所表示串的长度 ﹜ ﹜

阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。[说明]下面流程图的功能是:在给定的两个字符串中查找最长的公共子串,输出该公共子串的长度L及其在各字符串中的起始位置(L=0时不存在公共字串)。例如,字符串"The light is not bright tonight"与"Tonight the light is not bright"的最长公共子串为"he light is not bright",长度为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的指定字符串是否完全相同(该过程的流程略)。[流程图]

下列方法中,不能用于定位字符串中的字符或子字符串的是()。A、SubStringB、IndexOfAnyC、LastIndexOfD、IndexOf

如果一个串中的所有字符均在另一串中出现,则说前者是后者的子串。

一个串的任意个连续的字符组成的子序列称为该串的(),包含该子串的串称为()。

下列关于字符串的说法中,只有()是正确的。A、字符串的长度是指串中包含的字母的个数B、字符串的长度是指串中包含的不同字符的个数C、若T包含在S中,则T一定是S的一个子串D、一个字符串不能说是其自身的一个子串

下列关于串的叙述中,正确的是()A、串长度是指串中不同字符的个数B、串是n个字母的有限序列C、如果两个串含有相同的字符,则它们相等D、只有当两个串的长度相等,并且各个对应位置的字符都相符时才相等

串是由有限个字符构成的连续序列,串长度为串中字符的个数,子串是主串中字符构成的有限序列。

一个串中任意个连续字符组成的子序列称为该串的()串,该串称为它的所有子串的()串。

子串在主串中的位置指的是该子串的最后一个字符在主串中的位置。

函数String(n,"str")的功能是()。A、把数值型数据转换为字符串B、返回由n个字符组成的字符串C、从字符串中取出n个字符D、从字符串中第n个字符的位置开始取子字符串

在函数AT(子串)字符型表达式[,次数]中,如果子串在字符型表达式中不存在,则返回逻辑值

判断题串是由有限个字符构成的连续序列,串长度为串中字符的个数,子串是主串中字符构成的有限序列。A对B错

单选题下列关于字符串的说法中,只有()是正确的。A字符串的长度是指串中包含的字母的个数B字符串的长度是指串中包含的不同字符的个数C若T包含在S中,则T一定是S的一个子串D一个字符串不能说是其自身的一个子串

单选题一个子串在包含它的主串中的位置是指()。A子串的最后那个字符在主串中的位置B子串的最后那个字符在主串中首次出现的位置C子串的第一个字符在主串中的位置D子串的第一个字符在主串中首次出现的位置

填空题一个串中任意个连续字符组成的子序列称为该串的()串,该串称为它的所有子串的()串。

单选题下列关于串的叙述中,正确的是()A串长度是指串中不同字符的个数B串是n个字母的有限序列C如果两个串含有相同的字符,则它们相等D只有当两个串的长度相等,并且各个对应位置的字符都相符时才相等

判断题子串在主串中的位置指的是该子串的最后一个字符在主串中的位置。A对B错