从键盘输入 n(n<10)本书的名称和定价(用结构体类型的数组表示),从中查找定价最高和最低的书的名称和定价,并输出。试编写相应程序。
时间: 2024-05-10 09:14:23 浏览: 15
好的,以下是一个简单的C++程序实现此功能:
```c++
#include <iostream>
using namespace std;
struct Book {
string name;
double price;
};
int main() {
int n;
cout << "请输入书的数量: ";
cin >> n;
Book books[n];
// 输入书的名称和价格
for (int i = 0; i < n; i++) {
cout << "请输入第" << i+1 << "本书的名称和价格: ";
cin >> books[i].name >> books[i].price;
}
// 查找最高和最低的价格
int maxIndex = 0, minIndex = 0;
for (int i = 1; i < n; i++) {
if (books[i].price > books[maxIndex].price) {
maxIndex = i;
}
if (books[i].price < books[minIndex].price) {
minIndex = i;
}
}
// 输出结果
cout << "价格最高的书是: " << books[maxIndex].name << ",价格为: " << books[maxIndex].price << endl;
cout << "价格最低的书是: " << books[minIndex].name << ",价格为: " << books[minIndex].price << endl;
return 0;
}
```
输入示例:
```
请输入书的数量: 3
请输入第1本书的名称和价格: Book1 20.5
请输入第2本书的名称和价格: Book2 25.8
请输入第3本书的名称和价格: Book3 18.9
```
输出示例:
```
价格最高的书是: Book2,价格为: 25.8
价格最低的书是: Book3,价格为: 18.9
```