#include <iostream>
#include <cstring>
using namespace std;
class Figuer{
int num[100];
int len;
public:
Figuer():len(0){}
void sort(int num);
void show();
};
class Alpha{
char ch[100];
int len;
public:
Alpha():ch(),len(0){}
void sort(char ch);
void show();
void cho();
};
void Figuer::sort(int num){
int i=0;
while(i<=len){
if(this->num[i]>num){
for(int j=len;j>i;j--){
this->num[j]=this->num[j-1];
}
this->num[i]=num;
break;
}
i++;
}
len++;
}
void Alpha::sort(char ch){
this->ch[len]=ch;
len++;
/*while(i<=len){
if(this->ch[i]>ch){
for(int j=len;j>i;j--){
this->ch[j]=this->ch[j-1];
}
this->ch[i]=ch;
break;
}
i++;
}
len++;*/
}
void Figuer::show(){
for(int i=0;i<len;i++){
cout << num[i];
}
cout << endl;
}
void Alpha::show(){
for(int i=0;i<len;i++){
cout << ch[i] ;
}
cout << endl ;
}
void Alpha::cho(){
for(int i=1;i<len;i++){
for(int j=0;j<len-i;j++){
if(ch[j]>ch[j+1]){
char temp=ch[j];
ch[j]=ch[j+1];
ch[j+1]=temp;
}
}
}
}
int main()
{
Figuer f1;
Alpha a1;
char str[200];
int i=0;
cout << "请输入一句数字字母组成的句子" << endl;
cin >> str ;
int len=strlen(str);
while(i<len){
if(str[i]>='0' && str[i]<='9'){
int temp=(int)str[i]-48;
f1.sort(temp);
}else if(str[i]>='a' && str[i]<='z'){
char ch=(char)str[i];
a1.sort(ch);
}
i++;
}
a1.cho(); //对数据冒泡排序
f1.show();
a1.show();
return 0;
}