输入一行文本,包含大、小字母、数字、空格等。要求过滤掉除字母外的其他字符,并将所有的大写字母转换成小写字母,然后将字母从小到大排序,输出结果。

题目描述
输入一行文本,包含大、小字母、数字、空格等。要求过滤掉除字母外的其他字符,并将所有的大写字母转换成小写字母,然后将字母从小到大排序,输出结果。(c++)

输入格式
第1行:一行文本,长度小于1000

输出格式
第1行:处理后的一行文本

样例
样例输入
She sells sea shells
样例输出
a e e e e h h l l l l s s s s s s

#include "stdio.h"
#include "string.h"
void main()
{
    char str[100]={'\0'};
    char str1[100]={'\0'};
    
    int i=0,j;
    char temp;
    int cnt=0;
    gets(str);
    
    while(str[i]!='\0'){
        if((str[i]>='A' && str[i]<='Z')) {
            str1[cnt++]=str[i]+32;
        }else if((str[i]>='a' && str[i]<='z')) {
            str1[cnt++]=str[i];
        }
        i++;
    }
    puts(str1);
    //排序
    for(i=1;i<cnt;i++)
    {
        for(j=cnt-1;j>=i;j--)
        {
            if(str1[j]<str1[j-1]){
                temp=str1[j];
                str1[j]=str1[j-1];
                str1[j-1]=temp;
            }
        }    
    }    
    puts(str1);
}

import re
a = input('请输入一行文本:')
b = list(re.sub('[^a-zA-Z]','',a).lower())
b.sort()
print(' '.join(b))