【C語言】基于順序存儲結(jié)構(gòu)的圖書信息表的最貴圖書的查找

本文采用C語言求解


【問題描述】

定義一個包含圖書信息(書號、書名、價格)的順序表,讀入相應(yīng)的圖書數(shù)據(jù)來完成圖書信息表的創(chuàng)建。然后,查找價格最高的圖書,輸出相應(yīng)圖書的信息。

【輸入形式】

總計輸入n+1行。其中,第一行是圖書數(shù)目n,后n行是n本圖書的信息(書號、書名、價格),每本圖書信息占一行,書號、書名、價格用空格分隔,價格之后沒有空格。其中,書號和書名為字符串類型,價格為浮點數(shù)類型。

【輸出形式】

總計輸出m+1行,其中,第一行是最貴圖書的數(shù)目(價格最高的圖書可能有多本),后m行是m本最貴圖書的信息(書號、書名、價格),每本圖書信息占一行,書號、書名、價格用空格分隔。其中,價格輸出保留兩位小數(shù)。

【樣例輸入】

6

9787302257646 程序設(shè)計基礎(chǔ) 25.00

9787302164340 程序設(shè)計基礎(chǔ)(第2版) 20.00

9787302219972 單片機技術(shù)及應(yīng)用 32.00

9787302203513 單片機原理及應(yīng)用技術(shù) 26.00

9787810827430 工業(yè)計算機控制技術(shù)——原理與應(yīng)用 29.00

9787811234923 匯編語言程序設(shè)計教程 32.00

【樣例輸出】

2

9787302219972 單片機技術(shù)及應(yīng)用 32.00

9787811234923 匯編語言程序設(shè)計教程 32.00

【樣例說明】
【評分標準】

完整代碼如下:

#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 10000
struct Book
{
    char BookNumber[MAXSIZE];
    char BookName[MAXSIZE];
    double BookPrice;
}book[MAXSIZE];
int main()
{
    int n, m = 0;
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
    {
        scanf("%s", book[i].BookNumber);
        scanf("%s", book[i].BookName);
        scanf("%lf", &book[i].BookPrice);
    }
    double MaxPrice = book[0].BookPrice;
    int maxnumber[MAXSIZE];
    for (int i = 0; i < n; i++)
    {
        if (book[i].BookPrice > MaxPrice)
        {
            MaxPrice = book[i].BookPrice;
        }
    }
    for (int i = 0; i < n; i++)
    {
        if (book[i].BookPrice == MaxPrice)
        {
            maxnumber[m] = i;
            m = m + 1;
        }
    }
    printf("%d\n", m);
    for (int i = 0; i < m; i++)
    {
        printf("%s", book[maxnumber[i]].BookNumber);
        printf(" %s", book[maxnumber[i]].BookName);
        printf(" %0.2lf\n", book[maxnumber[i]].BookPrice);
    }
    return 0;
}

越努力,越幸運

end~~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容