图书管理系统(数据结构-C++)
来源:互联网 发布:服务网络占用硬盘 编辑:程序博客网 时间:2024/05/18 13:24
#include<iostream>//#include<string>using namespace std;struct book{char ch_num[3]; //图书编号char ch_name[100]; //图书名称 char ch_author[10]; //图书作者 char ch_publisher[50];//图书出版社 };int main(){ int number=10; //初始化为10本图书book Book[50]={ {"01","C语言程序设计","谭浩强","清华大学出版社"}, {"02","Javay应用开发与实践","刘乃琦","人民邮电出版社"},{"03","数字电子技术及基础","严石","清华大学出版社"},{"04","大学物理实验","李成龙","上海交通大学出版社"},{"05","离散数学","刘爱民","北京邮电大学出版社"},{"06","视听阅读","李慧琴","上海外语教育出版社"},{"07","快速阅读","束定芳","北京外语教育出版社"}, {"08","形势与政策","吴照明","合肥工业大学出版社"}, {"09","Java上机实训指导","王薇","华中科技大学出版社"},{"10","office自学经典","孙志刚","电子工业出版社"} }; //最多能存50本图书 cout<<"----------------------图书管理系统-----------------------"<<endl;cout<<"现存图书有01-10本图书,图书内容有如下信息:"<<endl;cout<<"图书编号-------图书名称--------图书作者---------图书出版社\n"<<endl;for(int i=0;i<number;i++){cout<<" "<<Book[i].ch_num<<"\t"<<Book[i].ch_name<<"\t\t"<<Book[i].ch_author<<"\t\t"<<Book[i].ch_publisher<<endl;} //printf("%02d",1);//for(int i=0;i<5;i++)//{//cout<<Book[i].ch_num.ch_name.ch_author.ch_publisher<<endl//}int choice; //选择功能int del_num; //删除功能int modify_num; //修改功能 int inspect_num; //查询功能int inset_num; //插入功能 cout<<"\n当前库存共有"<<number<<"本图书信息"<<endl;cout<<"请您选择将要完成的功能,对应功能按键显示如下:"<<endl;cout<<"0--退出系统"<<endl; cout<<"1--添加"<<endl;cout<<"2--删除"<<endl;cout<<"3--查询"<<endl;cout<<"4--修改"<<endl;cout<<"5--插入"<<endl;int flag=1;while(flag){/*cout<<"\n当前库存共有"<<number<<"本图书信息"<<endl;cout<<"请您选择将要完成的功能,对应功能按键显示如下:"<<endl;cout<<"0--退出系统"<<endl; cout<<"1--添加"<<endl;cout<<"2--删除"<<endl;cout<<"3--查询"<<endl;cout<<"4--修改"<<endl;cout<<"5--插入"<<endl;*/cin>>choice; switch(choice){case 0: //退出系统 cout<<"您已经成功退出系统,欢迎您的到来!"<<endl;flag=0;break;case 1: //添加功能 cout<<"请您按照以上的图书信息的顺序,添加新的图书:"<<endl;number++;cin>>Book[number].ch_num>>Book[number].ch_name>>Book[number].ch_author>>Book[number].ch_publisher;for(int i=0;i<number+1;i++){cout<<" "<<Book[i].ch_num<<"\t"<<Book[i].ch_name<<"\t\t"<<Book[i].ch_author<<"\t\t"<<Book[i].ch_publisher<<endl;}break;case 2: //删除功能 cout<<"请您输入要删除的第几本图书信息!"<<endl;cin>>del_num;//number--;if(del_num>number){ cout<<"没有该图书的信息当前库存共有"<<number<<"本图书信息,请您重新选择:"<<endl;cin>>del_num;number--;} for(int i=del_num-1;i<number;i++) { Book[i]=Book[i+1];}for(int i=0;i<number;i++){cout<<" "<<Book[i].ch_num<<"\t"<<Book[i].ch_name<<"\t\t"<<Book[i].ch_author<<"\t\t"<<Book[i].ch_publisher<<endl;}break;case 3: //查询功能 cout<<"请您输入将要查询的第几本图书信息:"<<endl; cin>>inspect_num;if(inspect_num>number){cout<<"您所查询的第"<<inspect_num<<"本图书信息不存在,请您重新输入:"<<endl;cin>>inspect_num;cout<<"您要查询的第"<<inspect_num<<"本图书信息如下:\n"<<endl;cout<<" "<<Book[inspect_num-1].ch_num<<"\t"<<Book[inspect_num-1].ch_name<<"\t\t"<<Book[inspect_num-1].ch_author<<"\t\t"<<Book[inspect_num-1].ch_publisher<<endl;}else{ cout<<"您要查询的第"<<inspect_num<<"本图书信息如下:\n"<<endl; cout<<" "<<Book[inspect_num-1].ch_num<<"\t"<<Book[inspect_num-1].ch_name<<"\t\t"<<Book[inspect_num-1].ch_author<<"\t\t"<<Book[inspect_num-1].ch_publisher<<endl;}break;case 4: //修改功能cout<<"请您输入需要修改的第几本图书信息:"<<endl;cin>>modify_num;if(modify_num>number){cout<<"您所输入的第"<<modify_num<<"本书不存在,当前库存图书共有"<<number<<"本图书,请重新输入:"<<endl;cin>>modify_num;cout<<"依次输入新内容,如果部分修改,可将原信息原样输入:"<<endl;cin>>Book[modify_num-1].ch_num>>Book[modify_num-1].ch_name>>Book[modify_num-1].ch_author>>Book[modify_num-1].ch_publisher;}else{cout<<"依次输入新内容,如果部分修改,可将原信息原样输入:\n"<<endl;cin>>Book[modify_num-1].ch_num>>Book[modify_num-1].ch_name>>Book[modify_num-1].ch_author>>Book[modify_num-1].ch_publisher;}for(int i=0;i<number;i++)cout<<"\n"<<" "<<Book[i].ch_num<<"\t"<<Book[i].ch_name<<"\t\t"<<Book[i].ch_author<<"\t\t"<<Book[i].ch_publisher<<endl;break;case 5: //插入功能 cout<<"请您选择要插入新图书的位置:"<<endl;cin>>inset_num;if(inset_num<1||inset_num>number){cout<<"输入的插入位置超出原有范围,当前可插入范围为 1 - "<<number<<"请重新输入"<<endl;cin>>inset_num;for(int i=number;i>=inset_num;i--){Book[i]=Book[i-1]; }cout<<"请您输入将要插入新位置的图书相关信息(编号、书名、作者、出版社):"<<endl;cin>>Book[inset_num-1].ch_num>>Book[inset_num-1].ch_name>>Book[inset_num].ch_author>>Book[inset_num].ch_publisher;for(int i=0;i<number+1;i++){cout<<" "<<Book[i].ch_num<<"\t"<<Book[i].ch_name<<"\t\t"<<Book[i].ch_author<<"\t\t"<<Book[i].ch_publisher<<endl;} }else{for(int i=number;i>=inset_num;i--){Book[i]=Book[i-1]; }cout<<"请您输入将要插入新位置的图书相关信息(编号、书名、作者、出版社):"<<endl;cin>>Book[inset_num-1].ch_num>>Book[inset_num-1].ch_name>>Book[inset_num-1].ch_author>>Book[inset_num-1].ch_publisher;for(int i=0;i<number+1;i++){cout<<" "<<Book[i].ch_num<<"\t"<<Book[i].ch_name<<"\t\t"<<Book[i].ch_author<<"\t\t"<<Book[i].ch_publisher<<endl;}}break; }}return 0;}/*int BF(char a[],char b[])//BF算法 a为主串,b为被检验的串`返回b在a中的第一个下标 若无返回0 { int i=0,j=0; while (a[i]&&b[j]) if (a[i++]==b[j]) ++j; // 继续比较后继字 else (i-=j)&&(j=0); return b[j]?0:i-j+1; } */
阅读全文
0 0
- 图书管理系统(数据结构-C++)
- 数据结构课程设计(图书管理系统)
- 数据结构课程设计 图书管理系统
- 数据结构记录--图书管理系统
- 数据结构课程设计-图书管理系统
- 数据结构课程设计--图书管理系统
- 数据结构课程设计-图书管理系统
- 数据结构课程设计--图书管理系统
- 数据结构课程设计-图书管理系统
- 数据结构课程设计图书管理系统
- (C语言课程设计)图书管理系统
- 图书管理系统(C语言)
- 图书管理系统(c语言课程设计)
- C语言图书管理系统
- object c 图书管理系统
- 图书管理系统 C语言
- C语言图书管理系统
- 【C语言】图书管理系统
- 常用易混的输入输出函数用法
- Spring面试60题
- 【Oracle】Clob字段读取,写入,更新
- JDBC总结
- Python3:《机器学习实战》之朴素贝叶斯(1)算法概述
- 图书管理系统(数据结构-C++)
- 关于vs2015 MvcContrib 多项目 无法找到资源 解决办法
- LeetCode 19. Remove Nth Node From End of List 解题
- 快速掌握单例模式
- 学习windows内核一
- 初探 React Router 4.0
- 一些php项目中比较通用的php自建函数的详解
- PostgreSQL 9.5.2 数据库说明
- Python基础学习-MariaDB基础学习