习题9-4 查找书籍(20 分)
给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价。
输入格式:
输入第一行给出正整数$n(\lt 10)$,随后给出n本书的信息。每本书在一行中给出书名,即长度不超过30的字符串,随后一行中给出正实数价格。题目保证没有同样价格的书。
输出格式:
在一行中按照“价格, 书名”的格式先后输出价格最高和最低的书。价格保留2位小数。
输入样例:
1 2 3 4 5 6 7
| 3 Programming in C 21.5 Programming in VB 18.5 Programming in Delphi 25.0
|
输出样例:
1 2
| 25.00, Programming in Delphi 18.50, Programming in VB
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| #include <stdio.h> #include <string.h> struct book { char name[30]; double price; };
int main() { int n, i, maxIndex, minIndex; double max, min; struct book store[10]; scanf("%d", &n); for (i=0; i<n; i++) { getchar(); gets(store[i].name); scanf("%lf", &store[i].price); } max = min = store[0].price; for (i=0; i<n; i++) { if (max <= store[i].price) { max = store[i].price; maxIndex = i; } if (min >= store[i].price) { min = store[i].price; minIndex = i; } } printf("%.2f, %s\n", max, store[maxIndex].name); printf("%.2f, %s\n", min, store[minIndex].name);
return 0; }
|