图书顺序表按照价格降序冒泡排序c语言
时间: 2023-06-12 09:05:21 浏览: 180
冒泡排序c语言
以下是一个简单的 C 语言程序,用于将图书顺序表按价格降序进行冒泡排序:
```c
#include <stdio.h>
struct Book {
char title[50];
char author[50];
float price;
};
void bubbleSort(struct Book books[], int n) {
int i, j;
struct Book temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (books[j].price < books[j + 1].price) {
temp = books[j];
books[j] = books[j + 1];
books[j + 1] = temp;
}
}
}
}
int main() {
int n, i;
struct Book books[100];
printf("Enter the number of books: ");
scanf("%d", &n);
printf("Enter book information:\n");
for (i = 0; i < n; i++) {
printf("Book %d:\n", i + 1);
printf("Title: ");
scanf("%s", books[i].title);
printf("Author: ");
scanf("%s", books[i].author);
printf("Price: ");
scanf("%f", &books[i].price);
}
bubbleSort(books, n);
printf("\nSorted books:\n");
for (i = 0; i < n; i++) {
printf("%s by %s: $%.2f\n", books[i].title, books[i].author, books[i].price);
}
return 0;
}
```
该程序定义了一个 `Book` 结构体,包含图书的标题、作者和价格。`bubbleSort` 函数使用冒泡排序算法对传入的 `Book` 数组按价格降序进行排序。在 `main` 函数中,用户输入图书信息,然后调用 `bubbleSort` 函数进行排序,并输出排序后的结果。
阅读全文