编写c语言程序,从键盘输入n(n<10)本书的名称和定价并存入结构数组中,从中查找定价最高和最低的书的名称和定价,并输出。
时间: 2023-11-27 15:50:10 浏览: 195
C语言程序设计-编写程序。从键盘读入8个整数存入数组a中并输出这8个数据。和、最大值、最小值及平均值。正数之和、负数之和
5星 · 资源好评率100%
以下是示例代码:
```c
#include <stdio.h>
struct book {
char name[50];
float price;
};
int main() {
int n;
printf("请输入书的数量(n<10):");
scanf("%d", &n);
// 声明结构数组
struct book books[n];
// 读入书名和价格
for (int i = 0; i < n; i++) {
printf("请输入第%d本书的名称:", i + 1);
scanf("%s", books[i].name);
printf("请输入第%d本书的价格:", i + 1);
scanf("%f", &books[i].price);
}
// 查找最高价和最低价
float max_price = books[0].price;
float min_price = books[0].price;
int max_index = 0;
int min_index = 0;
for (int i = 1; i < n; i++) {
if (books[i].price > max_price) {
max_price = books[i].price;
max_index = i;
}
if (books[i].price < min_price) {
min_price = books[i].price;
min_index = i;
}
}
// 输出结果
printf("定价最高的书是:%s,价格为%.2f\n", books[max_index].name, max_price);
printf("定价最低的书是:%s,价格为%.2f\n", books[min_index].name, min_price);
return 0;
}
```
注意,上述代码假定输入的书名不超过50个字符,如果需要支持更长的书名,请根据实际情况修改代码。
阅读全文