题解 | #牛牛的书#

牛牛的书

https://www.nowcoder.com/practice/30bb969e117b4f6d934d4b60a2af7489

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

typedef struct Book {
    char* name;
    int price;
} Book;

void swap(Book* a, Book* b) {
    char* name = a->name;
    int price = a->price;
    *a = *b;
    b->name = name;
    b->price = price;
}
int main() {
    int n;
    scanf("%d", &n);
    Book** book = malloc(sizeof(Book) * n);
    for (int i = 0; i < n; i++) {
        book[i] = malloc(sizeof(Book));
        book[i]->name = malloc(100);
        scanf("%s", book[i]->name);
        scanf("%d", &book[i]->price);
    }
  //冒泡排序
    for (int i = 0; i < n - 1; i++)
        for (int j = i + 1; j < n; j++) {
            if (book[i]->price > book[j]->price)swap(book[i], book[j]);
        }
    for (int i = 0; i < n; i++) {
        printf("%s\n", book[i]->name);
    }
    return 0;
}

#C#
0基础学C 文章被收录于专栏

0基础学C,从算法开始

全部评论

相关推荐

02-17 20:43
西北大学 Java
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
02-14 11:10
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务