C 刪除字符串1中的字符串2

#include<stdio.h>
#include<string.h>
void main()
{
char s1[1000],s2[100],b[100];
int i,j,k,len1,len2;
gets(s1);
gets(s2);
len1=strlen(s1);
len2=strlen(s2);
for(i=0,k=0;i<len1;i++)
{
for(j=0;j<len2;j++)
if(s1[i+j]!=s2[j])break;
if(j>=len2)
{
b[k]=i+1;  //b[k]爲s1中s2出現的位置
k++;         //k 爲s2在s1中出現的次數
}
}
printf("%d\n",k);
for(i=0;i<k;i++)
printf("%d ",b[i]);
printf("\n");


for(j=0;j<k;j++)        //去掉s1中的s2
for(i=0;i<len2;i++)
s1[b[j]-1+i]='*'; 
for(i=0;i<len1;i++)
if(s1[i]!='*')
printf("%c",s1[i]);
printf("\n");
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章