標籤:c語言 字串 字串匹配
//字串匹配問題
/*
===============================================================
題目:輸入兩字串S,T,輸出在S中存在但在T中不存在的字元儲存到新的字串中,
並保持其在字串S中的順序,然後在螢幕上顯示新的字串的內容。
===============================================================
*/
#include<stdio.h>
#include<string.h>
void main()
{
char S[30],T[30],xin[30];
int i,j,k=0;
printf("字串S:");
gets(S);
printf("字串T:");
gets(T);
for(i=0;i<strlen(S);i++)
for(j=0;j<strlen(T);j++)
if(S[i]==T[j])
S[i]=‘ ‘;
for(i=0;i<strlen(S);i++)
if(S[i]!=‘ ‘)
xin[k++]=S[i];
xin[k]=‘\0‘;
printf("新字串:");
for(i=0;i<strlen(xin);i++)
printf("%c",xin[i]);
printf("\n");
}
/*
===============================================================
評:相當於求S-T;
實現的基本思想是將S中的第一個字元與T中的所有字元進行匹配,若匹配成功,則
賦‘ ‘,否則不予處理,直到S中所有字元都進行過匹配。然後將S中不為‘ ‘的字元按原
來順序儲存到新字串中,最後順序輸出即可。
===============================================================
*/
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
C語言之基本演算法41—字串匹配問題