void fun(char str[])
{
int i = 0;
int j = 0;
int k = 0;
for(i = 0;str[i] != '\0';i++)
{
for(j = i + 1;str[j] != '\0';j++)
{
if(str[i] > str[j])
{
char tmp = str[i];
str[i] = str[j];
str[j] = tmp;
}
}
}
for(i = 0;str[i] != '\0';i++)
{
if(str[i] != str[i + 1])
{
str[k++] = str[i];
}
}
str[k] = '\0';
}
两点:第一点是先对整个字符串进行排序,这样可以使分散的相同字符进行集中。第二点就是查找是否相同,不相同就存储在前面,然后接着找下一项,最后把尾巴后面的部分删了。