题解 | #字符串排序#

字符串排序

https://www.nowcoder.com/practice/dfeed0e0e4624814b122265e859783b2

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

void swap(char* str1, char* str2, size_t size) {
    char temp[size];
    strcpy(temp, str1);
    strcpy(str1, str2);
    strcpy(str2, temp);
}

int main() {
    int n;
    char b[] = "stop";
    while (scanf("%d", &n) != EOF) {
        char a[n][101];
        int i, k;
        getchar();
        for (i = 0; i < n; i++) {
            gets(a[i]);
            if (strcmp(b, a[i]) == 0) {
                break;
            }
        }
        for ( k = 0; k < i; k++) {
            for (int j = k + 1; j < i; j++) {
                char temp[101];
                int length1 = strlen(a[k]), length2 = strlen(a[j]);
                if (length1 > length2) {
                    swap(a[k], a[j], 101);
                }
            }
        }
        for (int t = 0; t < k; t++) {
            printf("%s\n", a[t]);
        }
    }
}

全部评论

相关推荐

11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
尊尼获获:闺蜜在哪?
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务