Bootstrap

花式排序之字符串

问题描述】从键盘输入一个字符串,按如下要求实现对字符串中的元素进行排序:将下标为偶数的字符按降序(从大到小)排序,将下标为奇数的字符按升序排列。将排序后的字符串输出。(注意:输入的字符串中可能含有空格,下标从0开始)

【输入形式】一个字符串
【输出形式】排序后的字符串
【样例输入】akbfsreg

【样例输出】sfegbkar

#include<stdio.h>
#include<string.h>
int main() {
    char str[10000];
    int t,s,j,k;
    gets(str);
    for(j = 0; j < 10000; j++) {
        for(t = 0; str[t+2] != '\0'; t+=2) {
            if (str[t] <= str[t+2]) {
                s = str[t];
                str[t] = str[t+2];
                str[t+2] = s;
            }
        }
        for(t = 1; str[t+2] != '\0'; t+=2) {
            if (str[t] >= str[t+2]) {
                s = str[t];
                str[t] = str[t+2];
                str[t+2] = s;
            }
        }
    }
    printf("%s",str);
    return 0;
}

;