题解 | #牛牛的书#
牛牛的书
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,从算法开始
