设s为一个长度为n的串,其中的字符各不相同,则s中的互异非平凡子串(非空且不同于s本身)的个数是多少?
设s为一个长度为n的串,其中的字符各不相同,则s中的互异非平凡子串(非空且不同于s本身)的个数是多少?
参考答案和解析
(n 2 /2)+(n/2)-1
相关考题:
有以下函数int fun(char *s){ char *t=s;while(*t++);return(t-s);}该函数的功能是A) 比较两个字符 串 的大小B) 计算 s 所指字符串占用内存字节的个数C) 计算 s 所指字符串的长度D) 将 s 所指字符串复制到字符串 t 中
试题四(共 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*/}}
● 设 S 是一个长度为 5 的字符串,其中的字符各不相同,则计算 S 中互异的非平凡子串(非空且不同于 S 本身)数目的算式为(41)。(41)A.5+4+3+2+1B.5+4+3+2C.4+3+2+1D.4+3+2
有以下函数 int fun(char *s) { char *t=s; while(*t++); return(t-s); } 该函数的功能是A.比较两个字符串的大小B.计算s所指字符串占用内存字节的个数C.计算s所指字符串的长度D.将s所指字符串复制到字符串t中
以下说法中错误的是A.strcpy(A,B)函数是将A字符串的内容复制到B字符串中B.strlen(cha*s)返回字符串S的长度,未尾的字符不计算在内C.char a[20]="string";中字符串长度为6D.strstr(S1,S2)函数在字符串S1中从左边开始查找字符串S2,若查找成功则返回S2在S1中首次出现的位置,否则返回NULL,如果S2为"",则返回S1。
标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数组s中B.从文件file中读取长度不超过n-1个字符的字符串放到字符数组s中C.从文件file中读取n个字符串存入字符数组s中D.从文件file中读取长度为n-1个字符的字符串存入字符数组s中
标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数s由 SXB 标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数s由B.从文件file中读取长度不超过n-1个字符的字符放到字符数组S中C.从文件file中读到n个字符串存入字符数组s中D.从文件file中读取长度为n-1个字符的字符串存字符数组S中
标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数组S由S 标准库函数fgets(s,n,file)的功能是( )。A.从文件file中读取长度为n的字符串存入字符数组S由B.从文件file中读取长度不超过n-1个字符的字符串放到字符数组S中C.从文件file中读到n个字符串存入字符数组s中D.从文件file中读取长度为n-1个字符的字符串存人字符数组s中
设S 是一个长度为 n 的非空字符串,其中的字符各不相同,则其互异的非平凡子串(非空且不同于 S 本身〉的个数( )。A. 2n-1 B. n2 C. n(n+1)/2 D. (n+2)(n-1)/2
己知字符串 s=(X+Y)*Z ,其中,单引号不是字符串的内容, 经过以下运算后,t3 的值是( )。 t1=SubString(s ,3,1) t2=Concat(XY ,t1) t3=Replace(s,SubString(s,1,5),t2) 注: SubString(s,k,n)表示从串 s的第 k 个字符开始取出长度为 n 的子串, Concat(s,t)表示将串 t 连接在 s 之后, Replace(s,t,r)表示用 r 替换串 s 中的子串 t。A.;XY Z* B. (X Z)*Y C. XYZ * D. XY *Z
设原字符串s为StringBuffer型,且s="Hellojava",如果想用子串替换把s转换成"HelloWorld",则正确的语句是()A、s.replace(6,9,"World");B、s.replace(6,10,"World");C、s="World";D、s=replace("java","World");
设串s1=’ABCDEFG’,s2=’PQRST’,函数Concat(x,y)返回x和y串的连接串,SubStr(s,i,j)返回串s的从第i个位置开始的j个字符组成的子串,StrLength(s)返回串s的长度,则Concat(SubStr(s1,2,StrLength(s2)),SubStr(s1,StrLength(s2),2))的结果串是()A、BCDEFB、BCDEFGC、BCPQRSTD、BCDEFEF
下列关于字符串的说法中,只有()是正确的。A、字符串的长度是指串中包含的字母的个数B、字符串的长度是指串中包含的不同字符的个数C、若T包含在S中,则T一定是S的一个子串D、一个字符串不能说是其自身的一个子串
设串sI="ABCDEFG",s2="PQRST",函数con(x,y)返回x和y串的连接串,subs(s,i,j)返回串s的从序号i的字符开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1,2,1en(s2)),subs(sl,len(s2),2))的结果串是()A、BCDEFB、BCDEFGC、BCPQRSTD、BCDEFEF
单选题下列关于字符串的说法中,只有()是正确的。A字符串的长度是指串中包含的字母的个数B字符串的长度是指串中包含的不同字符的个数C若T包含在S中,则T一定是S的一个子串D一个字符串不能说是其自身的一个子串
单选题设串s1=’ABCDEFG’,s2=’PQRST’,函数con(x,y)返回x和y串的连接串,subs(s,i,j)返回串s的从序号i开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1,2,len(s2)),subs(s1,len(s2),2))的结果串是()ABCDEFBBCDEFGCBCPQRSTDBCDEFEF
单选题标准函数fgets(s,n,f)的功能是()A从文件f中读取长度为n的字符串存人指针s所指的内存B从文件f中读取长度不超过n-1的字符串存人指针s所指的内存C从文件f中读取n个字符串存人指针s所指的内存D从文件f中读取长度为n-1的字符串存入指针s所指的内存
单选题标准库函数fgets(s,n,f)的功能是( )。A从文件f中读取长度不超过n-1的字符串存入指针s所指的内存B从文件f中读取长度为n的字符串存入指针s所指的内存C从文件f中读取n个字符串存入指针s所指的内存D从文件f中读取n-1个字符串存入指针s所指的内存