欢迎登录北京林业大学OJ系统
http://www.bjfuacm.com

218基于链式存储结构的图书信息表的最贵图书的查找

描述
定义一个包含图书信息(书号、书名、价格)的链表,读入相应的图书数据来完成图书信息表的创建,然后查找价格最高的图书,输出相应图书的信息。
输入
总计输入n+1行,其中,第一行是图书数目n,后n行是n本图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔,价格之后没有空格。其中书号和书名为字符串类型,价格为浮点数类型。
输出
总计输出m+1行,其中,第一行是最贵图书数目(价格最高的图书可能有多本),后m行是最贵图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔,其中价格输出保留两位小数。
输入样例 1
8
9787302257646 Data-Structure 35.00
9787302164340 Operating-System 50.00
9787302219972 Software-Engineer 32.00
9787302203513 Database-Principles 36.00
9787810827430 Discrete-Mathematics 36.00
9787302257800 Data-Structure 62.00
9787811234923 Compiler-Principles 62.00
9787822234110 The-C-Programming-Language 38.00
输出样例 1
2
9787302257800 Data-Structure 62.00
9787811234923 Compiler-Principles 62.00

#include<iostream>
#include<iomanip>
#include<string>
using namespace std;
#define OK 1
#define ERROR 0
#define OVERFLOW -2
#define MAXSIZE 1000
typedef struct
{string no;     //编号string name;    //书名float price;    //价格
}Book;
typedef struct LNode
{int length;         //数据域(只计算头结点L的length值)Book data;          //数据域struct LNode *next; //指针域
}LNode,*LinkList;
int InitList_L(LinkList &L)          //注意引用&符号:形参变化,改变实参
{L=new LNode;L->next=NULL;return OK;
}
int Input_L(LinkList &L)             //注意引用&符号:形参变化,改变实参
{    LinkList p=L;                    //尾插法:p是链表的尾指针int n;cin>>n;                    while(n--)                    //循环输入n本书的数据{LinkList q=new LNode;        //定义新指针q并分配地址    cin>>q->data.no>>q->data.name>>q->data.price;//数据q->next=NULL;                                 //指针p->next=q;                   //将新指针q插在尾指针p的后面p=q;                         //更新指针p,指向尾结点}return OK;
}
int Max_L(LinkList L)                //求最大值
{LinkList p=L->next;              //p指向首元结点int max=p->data.price;           //首元结点的数据设为maxint count=0;          //最高价书,则数目while(p->next)                   //若下一个结点存在,则与max比较{if(max<p->next->data.price)    max=p->next->data.price; //更新max值p=p->next;                   //更新指针p,指向下一个结点}p=L->next;                       //p指向首元结点while(p)                         //若结点存在,则与max比较{if(p->data.price==max)       //若为最高价书,则count加1count++;                p=p->next;                   //更新指针p,指向下一个结点}cout<<count<<endl;               //输出最高价书的总数p=L->next;                       //p指向首元结点while(p)                         //若结点存在,则与max比较    {if(p->data.price==max)       //若为最高价书,则输出相关信息cout<<p->data.no<<" "<<p->data.name<<" "<<fixed<<setprecision(2)<<p->data.price<<endl;     p=p->next;                   //更新指针p,指向下一个结点}return OK;
}
int main()
{LinkList L;                      //定义LinkList类型的指针LInitList_L(L);                   //创建:给指针L分配地址,初始化Input_L(L);                      //输入数据Max_L(L);                        //求最高价书,并输出相关信息return 0;
}

BJFU_数据结构习题_218基于链式存储结构的图书信息表的最贵图书的查找相关推荐

  1. BJFU_数据结构习题_219基于链式存储结构的图书信息表的最爱图书的查找

    欢迎登录北京林业大学OJ系统 http://www.bjfuacm.com 219基于链式存储结构的图书信息表的最爱图书的查找 描述 定义一个包含图书信息(书号.书名.价格)的链表,读入相应的图书数据 ...

  2. BJFU_数据结构习题_222基于链式存储结构的图书信息表的旧图书的出库

    欢迎登录北京林业大学OJ系统 http://www.bjfuacm.com 222基于链式存储结构的图书信息表的旧图书的出库 描述 定义一个包含图书信息(书号.书名.价格)的链表,读入相应的图书数据来 ...

  3. Python 数据结构 之 串 的链式存储结构

    本文所采用的数据结构模板为 <数据结构教程>C语言版,李春葆.尹为民等著. 改篇所涉及到的是 串 的链式存储结构. 用Python仿照C语言来实现. 文章转载请注明:  Python 数据 ...

  4. (数据结构)二叉树的链式存储结构

    二叉树的顺序存储的缺点 因为并不是每个二叉树都是完全二叉树,普通二叉树使用顺序表存储或多或少会存在空间浪费的现象 图 1 普通二叉树的转化 如上图 1,普通二叉树里只有二个元素,最好的存储方式当然是开 ...

  5. 数据结构与算法4——链式存储结构

    前面所讲的线性表的顺序存储结构,它最大的缺点就是插入和删除时需要移动大量元素,这显然就需要耗费时间. 线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素,这组存储单元可以在内存中未被 ...

  6. 链表list(链式存储结构实现)_5 线性表的链式存储结构

    系列文章参考资料为<大话数据结构>,源码为个人私有,未经允许不得转载 线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素,可以使连续的,也可以不连续,也就意味这些元素可以 ...

  7. 图的链式存储结构解析(邻接表、逆邻接表、十字链表、邻接多重表)

    图的矩阵表示法比较消耗空间,需要花费$ n 2 n^2 n2$个单元存储边(弧).在边数较少的情况下比较浪费.我们这里来讨论图的链式存储结构. 图的链式结构主要有四类:邻接表.逆邻接表.十字链表.邻接 ...

  8. 基于链式存储结构图书信息表各项操作

    ​#include<iostream> #include<iomanip> #include<string> using namespace std; #defin ...

  9. haueoj1215: 基于链式存储结构的图书信息表的最爱图书的查找

    题目描述 定义一个包含图书信息(书号.书名.价格)的链表,读入相应的图书数据来完成图书信息表的创建,然后根据指定的最爱图书的名字,查找最爱的图书,输出相应图书的信息. 输入 总计n+m+2行.首先输入 ...

最新文章

  1. 艾伟_转载:DataTable.NewRow 内存泄漏问题
  2. java regex
  3. jittor和pytorch生成网络对比之cgan
  4. 中学校园网建设实践与思考
  5. Nessus扫描器的使用
  6. ASP.NET Core Web API下事件驱动型架构的实现(一):一个简单的实现
  7. 对内存重叠的深入认识
  8. 大话项目管理工具之Confluence篇
  9. MySQL存储过程的使用
  10. kafka(四)生产者和消费者配置优化
  11. c语言中ox1小于小于a,丹江口市2018适应性数学试卷和答案
  12. ectouch注册去邮箱的修改方法
  13. PHP网站批量自动发外链工具源码
  14. winwodws下c语言延时函数,lex实验报告(共10篇).doc
  15. 小程序UnionID是什么?以及UnionID获取途径
  16. 网上办公自动化|OA系统
  17. 什么是代理ip,代理ip的用途有哪些?
  18. 环境工程原理复习资料
  19. 【安全狗高危安全通告】OpenSSL存在远程代码执行漏洞和拒绝服务漏洞
  20. 浅谈商学院的功能以及重要性

热门文章

  1. 学习分享:学术前言趋势分析2—论文作者统计
  2. 绘制 Logistic 映射分叉图
  3. 我的世界服务器显示outofmemory,我的世界out of memory怎么办 out of memory解决办法
  4. 台湾海峡隧道工程线路初定3个方案(图)
  5. JavaSwing学习日记(九)CardLayout(卡片布局)
  6. 跟我学,你的服务器安全吗?第三篇----apache安全篇
  7. <2021SC@SDUSC>【Overload游戏引擎】OvUI源码模块分析(一)——Core
  8. NTP服务器(GPS北斗授时服务器)的市场需求及性能分析
  9. 如何在simulink下计算模型的误码率
  10. Office插件部署