43 lines
941 B
C++
43 lines
941 B
C++
#include <iomanip>
|
|
#include <iostream>
|
|
|
|
using namespace std;
|
|
|
|
typedef struct {
|
|
string id;
|
|
string name;
|
|
double price;
|
|
} book;
|
|
|
|
void swap(book &a, book &b) {
|
|
book temp = a;
|
|
a = b;
|
|
b = temp;
|
|
}
|
|
|
|
void sort(book *arr, int size) {
|
|
for (int i = 0; i < size - 1; i++) {
|
|
for (int j = 0; j < size - 1 - i; j++) {
|
|
if (arr[j].price < arr[j + 1].price) {
|
|
swap(arr[j], arr[j + 1]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
int main() {
|
|
book books[100];
|
|
int size = 0;
|
|
for (size = 0; 1; size++) {
|
|
cin >> books[size].id >> books[size].name >> books[size].price;
|
|
if (books[size].id == "0" && books[size].name == "0" && books[size].price == 0) {
|
|
break;
|
|
}
|
|
}
|
|
sort(books, size);
|
|
for (int i = 0; i < size; i++) {
|
|
cout << books[i].id << " " << books[i].name << " " << fixed << setprecision(2) << books[i].price << endl;
|
|
}
|
|
return 0;
|
|
}
|