【数据结构/C语言】从s中删除所有和串t相同的子串,并返回删除的次数

编写算法Delete_SubString(Stringtype &s, Stringtype t),要求从s中删除所有和串t相同的子串,并返回删除的次数。
(要求利用五种基本操作:串赋值StrAssign,串比较StrCompare,求串的长度StrLength,串的联接Concat,截子串SubString 加以实现)

int  Delete_SubString(Stringtype &s, Stringtype t)

//从串s中删除所有与t相同的子串,并返回删除次数
{
  for(n=0,i=1;i<=StrLength(s)-StrLength(t)+1;i++)
   if( !StrCompare(SubString(s,i,StrLength(t)),t) )
   {
         StrAssign(head,SubString(S,1,i-1));
         StrAssign(tail,SubString(S,i+StrlLength(t),StrLength(s)-i-StrLength(t)+1));
         StrAssign(S,Concat(head,tail)); //把head,tail连接为新串
        n++;
    }//if
 return n,
}
posted @ 2022-11-14 19:01  卞彦秋euReKa  阅读(594)  评论(0编辑  收藏  举报