九度OJ 1054:字符串内排序 (排序)

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:7949

解决:4343

题目描述:

输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。

输入:

测试数据有多组,输入字符串。

输出:

对于每组输入,输出处理后的结果。

样例输入:
bacd
样例输出:
abcd
来源:
2010年哈尔滨工业大学计算机研究生机试真题

思路:

基本的排序。


代码:

#include <stdio.h>
#include <string.h>
 
int main(void)
{
    char s[200];
    int i, j, len;
    char tmp;
 
    while (scanf("%s",s) != EOF)
    {
        len = strlen(s);
        //printf("%s\n", s);
        for (i=0; i<len-1; i++)
        {
            for (j=0; j<len-1-i; j++)
            {
                if (s[j] > s[j+1])
                {
                    tmp = s[j];
                    s[j] = s[j+1];
                    s[j+1] = tmp;
                    //printf("%s\n", s);
                }
            }
        }
 
        printf("%s\n", s);
    }
 
    return 0;
}
/**************************************************************
    Problem: 1054
    User: liangrx06
    Language: C
    Result: Accepted
    Time:10 ms
    Memory:912 kb
****************************************************************/


你可能感兴趣的:(排序,C语言,OJ,九度)