题目内容 (请给出正确答案)
[判断题]

如果t中存在等于p的子串,就指出该子串在t中的位置,称为匹配成功;否则称为匹配失败。

提问人:网友morlein 发布时间:2022-01-06
参考答案
查看官方参考答案
如搜索结果不匹配,请 联系老师 获取答案
网友答案
查看全部
  • · 有5位网友选择 ,占比55.56%
  • · 有4位网友选择 ,占比44.44%
匿名网友 选择了
[77.***.***.226] 1天前
匿名网友 选择了
[68.***.***.178] 1天前
匿名网友 选择了
[175.***.***.22] 1天前
匿名网友 选择了
[98.***.***.104] 1天前
匿名网友 选择了
[105.***.***.43] 1天前
匿名网友 选择了
[206.***.***.108] 1天前
匿名网友 选择了
[127.***.***.30] 1天前
匿名网友 选择了
[97.***.***.183] 1天前
匿名网友 选择了
[4.***.***.10] 1天前
加载更多
提交我的答案
登录提交答案,可赢取奖励机会。
更多“如果t中存在等于p的子串,就指出该子串在t中的位置,称为匹配…”相关的问题
第1题
设T和P是两个给定的串,在T中寻找等于P的子串的过程称为__(1)__,又称P为__(2)__。 【西安电子科技大学 1998 二、5 (16/6分)】
点击查看答案
第2题
设计一个算法:计算指定子串在一个字符串中出现的次数,如果该子串不出现则为0。算法首部如下:int substrcount(SString s,SString t)
点击查看答案
第3题
设有两个串T和P,求P在T中首次出现的位置的串运算称作【】

A.联接

B.求子串

C.子串定位

D.字符定位

点击查看答案
第4题
在目标串T[0,n-1]=”xwxxyxy”中,对模式串p[0,m-1]=”xy”进行子串定位操作的结果_______A.0B.2C.3D.

在目标串T[0,n-1]=”xwxxyxy”中,对模式串p[0,m-1]=”xy”进行子串定位操作的结果_______

A.0

B.2

C.3

D.5

点击查看答案
第5题
已知两个串为s1="bc cad cabcadf",s2="abc",试求两个串的长度,并判断s2串是否是s1串的子串;如果s
2是s1的子串,请指出s2在s1中的起始位置。

点击查看答案
第6题
●试题五 阅读以下程序说明和C程序,将应填入(n)处的子句,写在答卷纸的对应栏内。 【程序说明】 函

●试题五

阅读以下程序说明和C程序,将应填入(n)处的子句,写在答卷纸的对应栏内。

【程序说明】

函数int commstr(char *str1,char *str2,int *sublen)从两已知字符串str1和str2中,找出它们的所有最长的公共子串。如果最长公共子串不止1个,函数将把它们全部找出并输出。约定空串不作为公共子串。

函数将最长公共子串的长度送入由参数sublen所指的变量中,并返回字符串str1和str2的最长公共子串的个数。如果字符串str1和str2没有公共子串,约定最长公共子串的个数和最长公共子串的长度均为0。

【程序】

int strlen(char *s)

{char *t=s;

while(*++);

return t-s-1;

}

intcommstr(char)*str1,char *str2,int *sublen

{char*s1,*s2;

int count=0,len1,len2,k,j,i,p;

len1=strlen(str1);

len2=strlen(str2);

if(len1>len2)

{s1=str1;s2=str2;}

else{len2=len1;s1=str2;s2=str1;}

for(j=len2;j>0;j--)/*从可能最长子串开始寻找*

{for(k=0; (1) <=len2;k++)/*k为子串s2的开始位置*/

{for(i=0;s1[ (2) ]!='\0';i++;)/* i为子串s1的开始位置*/

{/* s1的子串与s2的子串比较*/

for(p=0;p<j)&& (3) ;p++);

if ((4) )/*如果两子串相同*/

{for(p=0);p<j;p++}/*输出子串*/

printf("%c",s2[k+p]);

printf("\n");

count++;/* 计数增1*/

}

}

}

if (count>0)break;

*sublen=(count>0)? (5) :0;

return count;

}

点击查看答案
第7题
阅读以下程序说明和C程序,将应填入(n)处的子句,写在对应栏内。【程序说明】 函数int commstr(char *

阅读以下程序说明和C程序,将应填入(n)处的子句,写在对应栏内。

【程序说明】

函数int commstr(char * str1,char * str2,int * sublen)从两已知字符串str1和str2中,找出它们的所有最长的公共子串。如果最长公共子串不止1个,函数将把它们全部找出并输出。约定空串不作为公共子串。

函数将最长公共子串的长度送入由参数sublen所指的变量中,并返回字符串str1和str2的最长公共子串的个数。如果字符串str1和str2没有公共子串,约定最长公共子串的个数和最长公共子串的长度均为0。

【程序】

int strlen(char * s)

{char *t=s;

while(* ++);

return t-s-1;

}

int commstr(char) *str1,char *str2,int *sublen

{ char*s1, *s2;

int count=0,len1 ,len2,k,j,i,p;

len1:=strlen(str1)

len2 = strlen(str2);

if(len1>len2)

{s1=str1 ;s2=str2;}

else {len2 = len1;s1 = str2;s2 = str1;}

for(j=len2;j>0;j--) /*从可能最长子串开始寻找*/

{for(k=0;(1)<:len2;k++) /*k为子串s2的开始位置*/

{for(i=0;s1[(2)]!='\0';i++;) /*i为子串s1的开始位置*/

{ /*s1的子串与s2的子串比较*/

for (p=0;p<j)&&(3);p++);

if ((4)) /*如果两子串相同*/

{for(p=0);p<j;p++} /*输出子串*/

printf ("%c",s2[k+p]);

printf ("\n");

count++;/*计数增1 */

}

}

}

if (count>0) break;

*sublen=(count>0)?(5):0;

return count;

}

点击查看答案
第8题
(选做题)查找字符串。输入两个字符串s和t,在字符串 s中查找子串t,输出起始位置,若不存在则输出-1。要求自定义函数char *search(char *s,char *t)返回子串t的首地址,若未找到,则返回NULL。
点击查看答案
第9题
采用顺序存储结构存储串,编写一个函数,计算一个子串在一个字符串中出现的次数,如果该子串不出现,则次数为0。

点击查看答案
第10题
试题四(共 15分) 阅读以下说明和C函数,将解答填入答题纸的对应栏内。 【说明】 函数del_substr(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; k<S->length; k++) /* 通过覆盖子串T进行删除 */

S->ch[ (4) ] = S->ch[k];

S->length = (5) ; /* 更新S的长度 */

}

else break; /* 串S中不存在子串T*/

}

}

点击查看答案
账号:
你好,尊敬的用户
复制账号
发送账号至手机
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
简答题
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
简答题
点击打开微信