1. 程式人生 > >ACM中常用字串函式

ACM中常用字串函式

語法:replace(char str[],char key[],char swap[]);

引數:

str[]:

在此源字串進行替換操作

key[]:

被替換的字串,不能為空串

swap[]:

替換的字串,可以為空串,為空串表示在源字元中刪除key[]

返回值:

null

注意:

預設str[]長度小於1000,如否,重新設定設定tmp大小

需要 string.h

源程式:

void replace(char str[],char key[],char swap[])
{
       int l1,l2,l3,i,j,flag;
       char tmp[1000];
       l1=strlen(str);
       l2=strlen(key);
       l3=strlen(swap);

        for (i=0;i<=l1-l2;i++)
        {
             flag=1;
            for (j=0;j<l2;j++)
               if (str[i+j]!=key[j]) 
              {
               flag=0;break;
               }
            if (flag)
            {
               strcpy(tmp,str);
               strcpy(&tmp[i],swap);
               strcpy(&tmp[i+l3],&str[i+l2]);
               strcpy(str,tmp);
               i+=l3-1;
               l1=strlen(str);
            }
        }
}