图书管理系统(只列出了大体的框架,需要源码的朋友请私信联系。)
1、问题描述
图书属性有:书名、出版社、ISBN号、作者、库存量、价格等信息和相关的对属性做操作的行为。主要完成对图书的销售、统计和图书的简单管理。
2、功能要求
(1)销售功能。购买书籍时,输入相应的ISBN号,并在书库中查找该书的相关信息。如果有库存量,输入购买的册数,进行相应计算。如果库存量不够,给出提示信息,结束购买。
(2)图书简单管理功能。
添加功能:主要完成图书信息的添加,要求ISBN号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加。
查询功能:可按书名、ISBN号、作者、出版社进行查询。若存在相应信息,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”。
修改功能:可根据查询结果对相应的记录进行修改,修改时注意ISBN号的唯一性。
删除功能:主要完成图书信息的删除。输入要删除的ISBN号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。
(3)统计功能。
输出当前书库中所有图书的总数及详细信息;可按书的价格、库存量、作者、出版社进行统计,输出统计信息时,要按从大到小进行排序。
(7)图书存盘:将当前程序中的图书信息存入文件中。
(8)读出信息:从文件中将图书信息读入程序。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct book{
char name[20];
char press[20];
char ISBN[20];
char author[20];
double inventory;
double price;
};
struct Node{
struct book data;
struct Node* next;
};
//创建链表(头)
struct Node* createList(){
struct Node* listHeadNode=(struct Node*)malloc(sizeof(struct Node));
listHeadNode->next=NULL;
return listHeadNode;
}
//创建节点
struct Node* createNode(struct book data){
struct Node* newNode=(struct Node*)malloc(sizeof(struct Node));
newNode->data=data;
newNode->next=NULL;
return newNode;
}
//录入之前的搜索
int search(struct Node* listHeadNode,struct book data)
{
struct Node* pMove=listHeadNode->next;
if(pMove==NULL){
return 1;
} else{
while(strcmp(pMove->data.ISBN,data.ISBN)){
pMove=pMove->next;
if(pMove==NULL){
return 1;
}
}
}
return 0;
}
//录入信息

(只列出了大体的框架,需要源码的朋友请私信联系。)