代码如下:
#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
int judge(char s[], char t[],int lenth) //定义函数判断在s中是否含他,返回序号
{
int i,j;
for (i = 0; i < lenth; i++)
{
if(i+strlen(t)>lenth) break;
for (j=0;j<strlen(t);j++)
{
if (s[i+j]!=t[j])
break;
}
if(j==strlen(t)) return i;
}
return -1;
}
int main()
{
int j, k, len;
char s[100], t[100], p[100];
memset(s, 0, sizeof(s));
memset(t, 0, sizeof(t));
memset(p, 0, sizeof(p));
cin >> s >> t >> p;
int lenth=strlen(s);
len=judge(s, t,lenth);
if(len!=-1)
{
for(int i=0;i<lenth;i++)
{
if(i==len){ cout<<p; //换成p
memset(s+len,0,strlen(t)); //将其中的字串变为NULL
len=judge(s,t,lenth); //重复调用judge函数
}
else if(s[i]!='\0')cout<<s[i];
}
}
else cout<<"NO";
return 0;
}
```cpp