删除字符串中的子串 (20 分)
输入2个字符串S1和S2,要求删除字符串S1中出现的所有子串S2,即结果字符串中不能包含S2。
输入格式:
输入在2行中分别给出不超过80个字符长度的、以回车结束的2个非空字符串,对应S1和S2。
输出格式:
在一行中输出删除字符串S1中出现的所有子串S2后的结果字符串。
输入样例:
Tomcat is a male ccatat
cat
输出样例:
Tom is a male
#include<stdio.h>
int main()
{
int n1=0,n2=0,s1[80],s2[80],i,j,flag;
while((s1[n1]=getchar())!='\n')
n1++;
while((s2[n2]=getchar())!='\n')
n2++;
for(i=0;i<n1;i++) {
if(s1[i]==s2[0]){
flag=1;
for(j=0;j<n2;j++)
if(s1[i+j]!=s2[j])
flag=-1;
if(flag==1){
for(j=i;j<n1;j++)
s1[j]=s1[j+n2];
n1=n1-n2;
i=-1;}
}}
for(i=0;i<n1;i++)
printf("%c",s1[i]);
}