本题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。
输入格式:
输入是一个以回车结束的非空字符串(少于80个字符)。
输出格式:
输出去重排序后的结果字符串。
输入样例:
ad2f3adjfeainzzzv
输出样例:
23adefijnvz
题目集全集传送门
#include <stdio.h>
#include <string.h>
#define maxn 81
int main()
{
char c[maxn], ch[maxn] = { '\0' }, temp;
int flag = 1, index = 0;
gets(c);
for (int i = 0; i < strlen(c); i++)
{
for (int j = 0; j < strlen(ch); j++)
if (c[i] == ch[j])
flag = 0;
if (flag)
{
ch[index] = c[i];
index++;
}
flag = 1;
}
//排序
for (int i = 0; i < strlen(ch); i++)
for (int j = i; j < strlen(ch); j++)
if (ch[i] > ch[j])
{
temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
}
puts(ch);
return 0;
}