关于线性表的综合操作
顺序表
@[TOC](文章目录)
前言
综合掌握顺序表的创建、排序、查找、插入、删除、修改等操作。
1. 基于顺序存储结构的图书信息表的创建和输出
定义一个包含图书信息(书号、书名、价格)的顺序表,读入相应的图书数据来完成图书信息表的创建,然后统计图书表中的图书个数,同时逐行输出每本图书的信息。
输入
输入 n+1 行,其中前 n 行是 n 本图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔,价格之后没有空格。最后第 n+1 行是输入结束标志:0 0 0(空格分隔的三个 0)。其中书号和书名为字符串类型,价格为浮点数类型。
输出
总计 n+1 行,第 1 行是所创建的图书表中的图书个数,后 n 行是 n 本图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔。其中价格输出保留两位小数。
输入样例
9787302257646 程序设计基础 25.00
9787302164340 程序设计基础(第 2 版) 20.00
9787302219972 单片机技术及应用 32.00
9787302203513 单片机原理与应用技术 26.00
9787810827430 工业计算机控制技术——原理与应用 29.00
9787811234923 汇编语言程序设计教程 21.00
0 0 0
输出样例
6
9787302257646 程序设计基础 25.00
9787302164340 程序设计基础(第 2 版) 20.00
9787302219972 单片机技术及应用 32.00
9787302203513 单片机原理与应用技术 26.00
9787810827430 工业计算机控制技术——原理与应用 29.00
9787811234923 汇编语言程序设计教程 21.00
代码如下:
#define OK 1
#define ERROR 0
typedef int Status;
typedef struct {
char no[20]; //图书ISBN
char name[50]; //图书名字
float price; //图书价格
}Book;
typedef struct {
Book* elem; //存储空间的基地址
int length; //图书表中当前图书个数
}SqList; //图书馆的顺序存储结构类型为SqList
typedef Book Elemtype;
Status InitList(SqList* L) {
//L->elem = (Elemtype*)malloc(sizeof(Elemtype)*MAXSIZE);
L->elem = new Book[MAXSIZE];
//malloc的返回值是一个指针,指向一段可用内存的起始地址
if (!L->elem)
exit(-2);
L->length = 0;

本文围绕顺序表的综合操作展开,重点介绍基于顺序存储结构的图书信息表的创建、输出、排序、修改、新图书入库与出库等操作。详细说明了输入输出要求,并给出相应代码示例,还对部分操作的实现要点进行了提示。
最低0.47元/天 解锁文章
2万+

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



