字符串过滤:
例如:aabbccaabbdd-->abcd abcdabcdefg-->abcdefg
即删除所有重复出现过的字符,只保留一个。
程序代码:
#include<iostream>
int main()
{
string s;
char ch[100];//用数组保存不同的字符
int j=0;
cin>>s; //aabbccaadd
s=s+" ";//末尾加上空格,方便最后一个字符比较
int len=s.size();
for(int i=0;i<len-1;i++)//前后字符两两比较
{
int flag=0;
if(s[i]!=s[i+1])//若前后字符不相同,则进入下一轮判断
{
for(int k=0;k<j;k++)///遍历数组中是否已经有该字符
{
if(s[i]==ch[k])//若已有该字符,则修改标志,跳出循环
{
flag=1;
break;
}
}
if(flag==0)//说明数组中还未有该字符
{
ch[j]=s[i];//在数组中加入字符
j++;
}
}
}
for(int i=0;i<j;i++)//循环输出
{
cout<<ch[i];
}
}