C语言定义一个函数,判断字符串中是不是包含另一个子串!!!!!!急
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言定义一个函数,判断字符串中是不是包含另一个子串!!!!!!急相关的知识,希望对你有一定的参考价值。
C语言定义一个函数,判断字符串中是否包含另一个子串!!!!!!急C语言的,帮忙写。给奖励很多
调用strstr()函数就可以实现#include <string.h>
#include <stdio.h>
int main()
char s[]="12345678";
char s1[]="135";
char s2[]="567";
if ( strstr(s,s1) )
printf("ok\\n");
else
printf("no\\n");
//--以上显示no
if ( strstr(s,s2) )
printf("ok\\n");
else
printf("no\\n");
//--以上显示ok
return 0;
追问
能自己输入么
追答#include <string.h>#include <stdio.h>
int main()
char s[100];
char s1[100];
printf("input s:");
gets(s);
printf("input s1:");
gets(s1);
if ( strstr(s,s1) )
printf("ok\\n");
else
printf("no\\n");
return 0;
追问
谢谢
参考技术A #include <stdio.h>char *mystrstr(char *s1,char *s2);
int main(void)
char s1[]="123456789",s2[]="123";
if(mystrstr(s1,s2)!=NULL)
puts("YES");
else
puts("NO");
return 0;
char *mystrstr(char *s1,char *s2)
char *p,*q;
for(;*s1;s1++)
if(*s1==*s2)
for(p=s1,q=s2;*q&&*p==*q;p++,q++);
if(!*q)
return s1;
return NULL;
追问
用scanf自己输入的
C语言定义一个函数,判断字符串中是不是包含另一个子串
C语言定义一个函数,判断字符串中是否包含另一个子串C语言的
以下str()函数的作用是判断字符串s1中是否包含字符串s2,代码如下:void str(char*s1,char*s2)
int i=0,j,k=1;
for(;;i++)
j=0;
while(s2[j]!='\0')
if(s1[i+j]!='\0'||s1[i+j]!=s2[j])
k=0;
break;
j++;
if(k)break;
if(k)printf(“字符串%s中包含字符串%s。\n”,s1,s2);
else printf(“字符串%s中不包含字符串%s!\n”,s1,s2);
追问
在我这里不好用,但我调试了
谢谢
追答谢谢你采纳。
其中有一句中的if(s1[i+j]!='\0'……应该改成:
if(s1[i+j]=='\0'……
相信你自己已经做了调整。
谢谢你啊,有疑问提问时找你
参考技术A int find(char* source/*源串*/, char* target/*目标串*/)//找到返回位置,未找到返回-1int i,j;
int s_len=strlen(source);
int t_len=strlen(target);
if(t_len>s_len)
return -1;
for(i=0;i<=s_len-t_len;i++)
j=0;
int flag=1;
if(source[i]==target[j])
int k,p=i;
for(k=0;k<t_len;k++)
if(source[p]==target[j])
p++;
j++;
continue;
else
flag=0;
break;
else
continue;
if(flag==1)
return i;
return -1;
追问
什么玩意
追答你发的什么玩意,这就是什么玩意的答案
追问不好意思啊
不是我们要求的
以上是关于C语言定义一个函数,判断字符串中是不是包含另一个子串!!!!!!急的主要内容,如果未能解决你的问题,请参考以下文章