習題9-4 查找書籍 (20 分)
給定n本書的名稱和定價,本題要求撰寫程式,查找并輸出其中定價最高和最低的書的名稱和定價,
輸入格式:
輸入第一行給出正整數n(<10),隨后給出n本書的資訊,每本書在一行中給出書名,即長度不超過30的字串,隨后一行中給出正實數價格,題目保證沒有同樣價格的書,
輸出格式:
在一行中按照“價格, 書名”的格式先后輸出價格最高和最低的書,價格保留2位小數,
輸入樣例:
3
Programming in C
21.5
Programming in VB
18.5
Programming in Delphi
25.0
輸出樣例:
25.00, Programming in Delphi
18.50, Programming in VB
該題屬于C語言基礎編程題,難度中等偏易,題目本身不難,作者意在考察學生對基本結構體的建立和選擇排序的掌握情況,筆者目前計算機大一在讀,水平有限,全當參考,如有錯誤,敬請指正,謝謝,
以下為原始碼部分:
#include<stdio.h>
#include<string.h>
struct book{
char bookname[31];
double prince;
};
int main()
{
struct book ch[10];
struct book temp;
int n,i,j;
scanf("%d",&n);
getchar();
for(i=0;i<n;i++)
{
gets(ch[i].bookname);
scanf("%lf",&ch[i].prince);
getchar();
}
for(i=0;i<n;i++)
{
for(j=i+1;j<n+1;j++)
{
if(ch[i].prince<ch[j].prince)
{
temp=ch[i];
ch[i]=ch[j];
ch[j]=temp;
}
}
}
printf("%.2lf, ",ch[0].prince);
printf("%s\n",ch[0].bookname);
printf("%.2lf, ",ch[n-1].prince);
printf("%s\n",ch[n-1].bookname);
return 0;
}
水平有限,敬請指正,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/262038.html
標籤:其他
