7-2 删除重复字符 (20 分)
本题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。
输入格式:
输入是一个以回车结束的非空字符串(少于80个字符)。
输出格式:
输出去重排序后的结果字符串。
样例:">输入样例:
ad2f3adjfeainzzzv
输出样例:
23adefijnvz
我写的。
我开始吧读入字符写错了,忘记有空格了。。。
#include<bits/stdc++.h>
using namespace std;
int main() {
string st;
getline(cin,st);
set<char> s;
for(int i=0; i<st.length(); i++) {
s.insert(st[i]);
}
//set<char>::iterator i;
for(auto it : s){
cout << it;
}
return 0;
}
抄来的。
#include<bits/stdc++.h>
using namespace std;
int main(){
string ch;
int a[128]={0};//全部置为0
getline(cin,ch);
for(int i=0;i<ch.length();i++){
if(a[ch[i]]==0) a[ch[i]]=1;
}
for(int i=0;i<128;i++){
if(a[i]==1) printf("%c",i);
}
return 0;
}
|