题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。
输入格式:
输入是一个以回车结束的非空字符串(少于80个字符)。
输出格式:
输出去重排序后的结果字符串。
输入样例:
ad2f3adjfeainzzzv
输出样例:
23adefijnvz
#include <stdio.h> #include <string.h> int main()//本题采用先排序,再对比前后是否重复来选择输出的思路 { int t; char a[80]; gets(a); for(int i = 0; i < strlen(a); i ++) { int index = 0; for(int j = 1; j < strlen(a) - i; j ++) { if(a[j] > a[index]) index = j; } t = a[index]; a[index] = a[strlen(a) - 1 - i]; a[strlen(a) - 1 - i] = t; } for(int i = 0; i < strlen(a); i ++) { if(a[i] != a[i - 1]) printf("%c",a[i]); } return 0; }