#include <stdio.h>
#include <stdlib.h>
#define MAX 30
struct Book
{
double price ;
char name[MAX];
} book;
int main(int argc, char *argv[]) {
int n,i,max,min;
scanf("%d",&n);
char c;
max=0;
min=0;
struct Book book[n];
//输入书名和书的价格
for(i=0;i<n;i++){
//清除缓冲区的'\n'
fflush(stdin);
gets(book[i].name);
scanf("%lf",&book[i].price);
//搜寻价格最高的书和价格最低的书
if(book[i].price>book[max].price){
max=i;
}
if(book[i].price<book[min].price){
min=i;
}
}
//在一行中按照“价格, 书名”的格式先后输出价格最高和最低的书。价格保留2位小数。
printf("%.2f, %s\n",book[max].price,book[max].name);
printf("%.2f, %s",book[min].price,book[min].name);
return 0;
}
习题9-4 查找书籍 (20 分)
寻找最高价与最低价书籍
最新推荐文章于 2025-01-24 20:45:55 发布
该程序读取用户输入的书籍数量,随后输入每本书的名称和价格。程序会找出价格最高和最低的书籍,并按照'价格,书名'的格式输出。注意,它使用`fflush(stdin)`和`gets()`来清除输入缓冲区并读取书名,这在某些情况下可能不安全。
229

被折叠的 条评论
为什么被折叠?



