纯C

懒得细分,直接128 hash

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main()
{
    char str[1025] = {'\0'};
    while(scanf("%s", str) != EOF)
    {
        int flag[128] = {0};
        char *pstr = str;
        while(*pstr != '\0')
        {
            flag[(int)*pstr] = 1;
            pstr++;
        }
        for(int i=0; i<128; i++)
        {
            if(flag[i])
            {
                pstr = str;
                while(*pstr != '\0')
                {
                    if((int)*pstr == i)
                        printf("%c", *pstr);
                    pstr++;
                }
            }
        }
        printf("\n");
    }
    return 0;
}