首页 > 试题广场 >

#include #include <...

[填空题]
#include <stdio.h>
#include <string.h>

const int SIZE = 100;
const int LENGTH = 25;

// strcmp(a,b) <0:a的字典序小于b
// strcmp(a,b) =1:a和b一样
// strcmp(a,b) >0:a的字典序大于b
int main( ) {
    char dict[SIZE][LENGTH + 1];
    int rank[SIZE];
    int ind[SIZE];
    int i, j, n, tmp;
    scanf("%d", &n);
    for (i = 1; i <= n; i++) {
        rank[i] = i
        ind[i] = i;
        scanf("%s", dict[i]);
    }
    for (i = 1; i < n; i++)
        for (j = 1; j <= n - i; j++)
            if (strcmp(dict[ind[j]], dict[ind[j + 1]]) > 0) {
                tmp = ind[j];
                ind[j] = ind[j + 1];
                ind[j + 1] = tmp;
            }
    for (i = 1; i <= n; i++)
        rank[ind[i]] = i;
    for (i = 1; i <= n; i++)
        ptintf("%d", rank[i]);
    printf("\n");
    return 0;
}

输入:
7
aaa
aba
bbb
aaa
aaa
ccc
aa
输出:__1____

参考答案是不是错了。。。
发表于 2019-10-17 21:42:13 回复(0)