编写字符串函数char *substr(char *str1, char *str2),判断字符串str2是否为str1的子串

放弃修改你的程序了,改的功夫,可以写5个类似的程序了

应你的要求,修改如下
#include
char *substr(char *str1, char *str2);
void main()
{
char str1[80], str2[80];
char* flag=NULL;
int i=0;
printf("输入str1\n");
gets(str1);
printf("输入str2\n");
gets(str2);
flag=substr(str1,str2);
printf("%d\n",flag - str1);
if(flag!=NULL)
printf("%s",flag);
else
printf("NULL");
}

char *substr(char *str1, char *str2)
{
char * p = str1;
while(*p)
{
if(memcmp(p,str2, strlen(str2)) == 0)
return p;
p++;
}
return NULL;
}
#include
char *substr(char *str1, char *str2);
void main()
{
char str1[80], str2[80];
char* flag=NULL;
int i=0;
printf("输入str1\n");
gets(str1);
printf("输入str2\n");
gets(str2);
flag=substr(str1,str2);
printf("%d\n",flag - str1);
if(flag!=NULL)
printf("%s",flag);
else
printf("NULL");
}

char *substr(char *str1, char *str2)
{
char * p = str1;
while(*p)
{
if(memcmp(p,str2, strlen(str2)) == 0)
return p;
p++;
}
return NULL;
}