可按Ctrl+D收藏 蚂蚁资源网

蚂蚁资源网

图书管理系统源码(图书信息管理系统代码)

  • 时间:2021-09-08 18:13 编辑:赵泽帆 来源:蚂蚁资源 阅读:59
  • 扫一扫,手机访问
摘要:大家好,今天给大家介绍关于图书管理系统源码(图书信息管理系统代码)的相关内容,详细讲解用C++编写图书管理系统(源代码),数据库图书管理系统代码,急求用C语言编写的图书管理系统源代码等,希望可以帮助到您。
用C++编写图书管理系统(源代码),这估计是由您所提供的每一点完成的。我会给你一个参考,已经实现了基本功能,它已在VC6上编译:#include #include #include #include //输入/输出文件流使用命名空间std; const int maxr = 100; //大多数读者const int maxb = 100; //大多数本书Const Int Maxbor = 5; //每个读者都将借用五本书//阅读器,实现读者信息类阅读器的描述{私有:int标签; //删除标签1:删除0:不符合INT NO; //阅读器号char名[10]; //读者名称int borbook [maxbor]; //预订公共:Reader(){} char * getName(){返回名称;} //获取name int gettag(){return标记;} //获取删除标记int getno(){return no;} / /让读者麻木er void setName(char na [])//设置名称{结构(名称,na); void delbook(){ta​​g = 1;} // set deleteag 1:删除0:无法删除void addreader int n ,char * na)//添加读者{tag = 0; no = n; Strcpy(名称,NA); for(int i = 0; i >选择;切换(选择){案例'1':cout << "输入读者编号:"; cin >>阅读器; cout << "输入读者姓名:"; cin >> rname; addreader(ReaderID,Rname);休息;案例2 ':cout << "输入读者编号:"; cin >>阅读器; r =查询(readerID);如果(r == null){cout << " 该读者不存在 "<> rname; r-> setname(rname);休息;案例'3':cout << " 输入读者编号:"; cin > >阅读器; R =查询(ReaderID);如果(r == null){cout <<" 该读者不存在" << endl; break; } r-> delbook();休息;案例'4':cout << "读入读者编号:"; cin >>阅读器; r =查询(ReaderID);如果(r = = null){cout <<"该读者不存在"<< endl; break; } r-> disp();休息;案例'5':disp();休息;案例'6':clear();休息;休息;休息;默认:cout <<"输入错误,请从新输入:";break; } } } //图书类,实现对图书的描述,图书的编号,书名,借出,还入等 class Book { private: int tag;//删除标记 1:已删 0:未删 int no;//图书编号 char name[20];//书名 int onshelf;//是否再架 1:再架 2:已借 public: Book(){} char *getname() { return name; }//获取姓名 int getno(){ return no; }//获取图书编号 int gettag(){ return tag; }//获取删除标记 void setname(char na[])//设置书名 { strcpy(name,na); } void delbook(){ tag=1;}//删除图书 void addbook(int n,char *na)//增加图书 { tag=0; no=n; strcpy(name,na); onshelf=1; } int borrowbook()//借书操作 { if (onshelf==1) { onshelf=0; return 1; } return 0; } void retbook()//还书操作 { onshelf=1; } void disp()//输出图书 { cout << setw(6) << no << setw(18) << name << setw(10) <<(onshelf==1? "在架":"已借") <>选择;切换(选择) {案例'1':cout << "输入图书编号:"<>书签; cout << "输入图书书名:"<> bname;附加册(Bookid,Bname);休息;案例'2':COUT << "输入图书编号:"<>书签; b =查询(Bookid); if(b == null){cout << " 该图书不存在 "<> bname; b-> setname(bname);休息;案例'3':cout <<" 读入图书编号:"<>书签; b =查询(Bookid); if(b == null){cout <<" 该图书不存在" << endl; break; } b-> delbook();休息;案例'4':cout << " 读入图书编号:"<>书签; b =查询(Bookid); if(b == null){cout <<" 该图书不存在"<< endl; break; } b-> disp();休息;案例'5':DISP();休息;案例'6':clear();休息; defaut:cout <<"输入错误,请从新输入:"; } } } //main() 函数的实现,程序的主界面的引导 void main() { char choice; int bookid,readerid; RDatabase ReaderDB; Reader *r; BDatabase BookDB; Book *b; while(choice!='0') { cout <>选择;切换(选择){案例'1':cout <<" 借书 读者编号:"; cin >>阅读器; cout <<" 图书编号: "; cin >>书签; r = readerdb.query(ReaderID); //查找按号(null == r){cout <<" 不存在该读者,不能借书"<< endl; break; } b=BookDB.query(bookid); if (b==NULL) { cout <<" 不存在该图书,不能借书"<< endl; break; } if (b->借款()== 0){cout << " 该图书已借出,不能借书"<< endl; break; } r->借款(b-> getno());休息;案例'2':cout <<"还书\n 读者编号:"; cin >>阅读器; cout << " 图书编号:"; cin >>书签; r = readerdb.query(r == null){cout <<" 不存在该读者,不能还书" << endl; break; } b=BookDB.query(bookid); if (b==NULL) { cout <<" 不存在该图书,不能还书" < Retby(); R-> Retbook(b-> getno());休息;加利福尼亚州SE'3':BookdB.BookData();休息;案例'4':ReaderDB.ReaderData();休息;默认值:COUT <<“输入错误,请从新输入:”;}}}
数据库图书管理系统代码,创建数据库DBUSE DBCREATE表借用级别信息(借用电平INT主键,最大借用时间INT,最大借用数量int,)插入借用水平信息值(0,30,10),(1,60,20),2, 90,30),(3,120,40)创建表读取器信息(名称char(15)not null,文档编号char(12)主键,借用级别int默认值0,累计借用int default 0,异物int默认0 ,外键参考借用借阅级别信息(借用级别))插入读者信息(名称,文件编号,借用级别)值('Zhang San','541607120165',1),('Li Si','541707010185“,3 ),('国王5','541707120165',1),('赵柳','541505980268',2),('Sun 7th,'541407010169,0),('周8','541307010489',1 )创建表格按(按VARCHAR(20)主键,地址varchar(25),联系电话炭(7))插入压力值(“清华大学出版社”,'北京','4979421'),('威出社','天津','5564130 '),('南海出版公司','海南','4984910'),(“上海文学出版社”,“上海”,'6640239')创建表簿信息(Supo No.Char(15)主键,作者Char(15),标题Char(15),出版社varchar(20),发布日期,外国键参考发布房间信息(按))插入书信息值('b12987','yan weimin','数据结构“,”青春大学出版社“2012-02-06”,('B97894“,'Dong Yucu,'Magic Night','南海出版公司','2004-08-02'),('B16546', “吴宇华”,“物理实验教程”,“清华大学出版H.','2013-05-15'),('b89490','zhang xuefeng','测试指南“,'晟威出社','2016-12-12'),('b56400','郏Zongpei','Xianji','上海文学出版社','2011-02-05')创建表单本信息(代码编号char(7)主键检查(len(代码编号)= 7), SO ock(15),柱藏瓦施塔(40),书籍状态varchar(6)检查(书籍书“,'借用','非借阅'),历史博罗·int默认值0,外键参考书信息( Sofuki))插入SLR书籍信息(书籍号,SUPO,列,书籍书)('T987628','B97894','3 / F OFF A8','学习'),('t594805',' B97894','2楼C7','可以借用'),('t984910','b89490','5楼A2','借阅')('t940566','b12987','项链d3','借阅')创造E表借用信息(借用编号字符(6)主键,借款日期,返回时间日期,书籍码字符(7),贷款ID Number Char(12),外键参考单本书信息(书编号),外键(借款人文件编号)引用读者信息(文件编号))创建表评论信息(Number Char(8)主键,评级数字2,1),Content varchar(200),评论时间日期,评论员ID char (12),所以编号第1块字符(15),外键(SUPO)引用书信息(SUPO),外键(评论员ID),外键参考阅读器信息(文件编号))插入评论信息值('p12391',8.9,'非常有趣','2015-06-24','b9707010185','b97894'),('p98523',7.8,'收到了很多','2016-05-22 ','541307010489','b89490'),('p94606',6.8,'完全看Orz','2017-05-02','b12987')创建表键字信息(ID Char(8)主键,类别字符(15),sope自行车char(15),外键(supo)引用书信息(q))插入Keet信息值('z64400','计算机','b12987'),('z95410', '物理','b16546'),('z98500','postgraduate','b89490'),('z64165','推理\悬念','b97894'),('z69850','xian xia',' B56400')使用dbgocreate trigger trigger1on借用信息Afterinsertasbegin更新读者信息 - 更改读者累计借用金额集累计借用=读取器信息中的累计借用+ 1,插入了Wherewhere阅读器信息。文档编号=插入。借用文件号码更新SLR书籍信息 - 更改书籍状态设置单本书信息。 Book Status =“学习”从插入,单本插入的单本信息。书条码号=单本书信息。代码更新单本信息集历史博读=历史借用+ 1更改账簿历史借贷从插入的单本信息插入。书条码号=单本书信息。代码编号endinsert进入借用信息值('j13488',2018-05-01','t987628','t987628','541407010169')插入借用信息值('j14910',2016-12 -11','2017-01-25','t984910','541607120165')插入借用信息价值'J97890',2018-05-14',2018-06-14','54160566',' 541607120165')Gocreate View View_1(书条形码,姓名,号码,借用时间,仍然是时间)ASSSelect书籍代码号,姓名,证书编号,借用时间,从借阅信息返回时间,借阅信息的阅读器信息。借用文件编号=读者信息。文档编号和返回时间> getDate()Gocreate View View_2(预订条码,历史记录借用)可靠的书籍信息,从单本信息的历史贷款,书籍信息,单本信息。 QUSUS号码=书籍信息。 SOPE编号和书籍名称='魔术之夜'Gocreate View view_3(类别,书条码,历史记录始终阅读)可靠类别,条形码编号,单本信息的历史贷款,书籍信息,关键字信息。 SOS号码=书信息离子。亚基号码和书籍信息。 subkel号=单本书信息。 Supo编号和类别='postgraduate'gocreate视图view_4(读者号码,条形码,书籍名称,依赖日期)和借用证书编号,标题,返回时间从单本信息,书籍信息,借阅信息信息。书条码号=单本书信息。代码和单本信息。索克号=书籍信息。 SOPE编号和返回时间> getDate()和借用Copyman ID编号='541607120165'Gocreate视图view_5(读者号码,书条码,书名,借贷日期,贷款日期,借阅借阅文件编号,书籍条形码编号,书名,借用时间,从单本信息返回时间,书信息离子,借阅借阅信息的信息。书条码号=单本书信息。代码和单本信息。 sope number =书籍信息。 SOPE编号和借款ID编号='541607120165'gocreate视图view_6(读者号码,书籍名称,评论时间,注释)权衡评论者ID,Bookname,评论时间,来自贷款信息的内容,单本信息,评论信息,书籍信息贷款信息。书条码号=单本书信息。代码和SLR书籍信息。 Qusus号=评论信息。 subkel n评论信息。 Subsho =书籍信息。 SOKE编号和审核人员ID ='541607120165'Gocreate查看View_7(出版社名称,书籍名称,发布时间)可靠100%Press Information。出版房屋,标题,从新闻信息发布时间,书籍发布信息信息。按=书籍信息。按顺序通过发布时间ASC--从View_2Select *从View_2Select *从View_4Select *从View_4Select *从View_5Select *从View_6Select *从View_6Select *从View_6Select *从View_7订购访问协议)网络模型(大数据存储)关系模型面向对象模型半节点配置模型平面模型(表模型,通常以形成二维数组。作为表单模型数据Excel架构数据库架构可以大致分为三个一般分层层:内层,概念层和外部layer。内层:最接近实际存储,即相关数据的实际存储方法。外层:靠近用户,即从个人用户观看数据的方式。概念层:两者之间的内部层。数据库索引主条目:数据库索引数据索引的概念已经很长,就像一本书前面的目录,一个目录也是一个索引,但它的分类很广,如车牌,身份证,条形码等待,这是一个索引号。当我们看到该号码时,您可以从数字中看到线索。如果您正在寻找的人,您正在寻找的汽车或物品,您可以快速找到正确的数字。周围。此外,该索引与该字段具有相应的关系。索引来自该字段,而索引e该字段具有所谓的键字段(该字段具有唯一性,即其值不重复,并且不能为“null)。例如,在合并数据时,索引是播放字段数据毫无意义的角色。因此,索引不是重复的,不能为空。数据库操作:事务房屋:数据库事务事务是用户定义的数据库操作序列,它们是完成的,它是一个不可分割的工作单元。交易的并发性指并行操作中的多个事务,事务的并发性可以访问和存储不正确的数据,破坏事务的隔离和数据库的一致性。网格数据模型的数据结构网格模型满足基本分层Contac的集合以下两者作为网格模型。 1.允许多个节点无与伦比; 2.节点可以具有多于一个双工。参考资料来源:百度百科全书 - 数据库
急求用C语言编写的图书管理系统源代码,#ifndef _simple_book_manager_h#define _simple_book_manager_htypedef struct bookrecord {int index; // number char目录[20]; //分类char book_name [40]; //标题Char作者[20]; //炭发行者[80]; //出版社int数量; //数量float single_price; //价格float total_price; //总价} BookRecord,* Ptruokrecord; typedef struct catalogrecord {index; // number char目录[20]; //分类int total_number; //副本总数} Catalogrecord,* ptrcatalogrecord; #endif void readbookrecord(bookrecord *,file *); void fillrecord(char * line,bookrecord *); file * open_file(const char * file_name); void getNumber(const char * file_name,char * number); void print_main_menu(); char get_command(); void searchanddisplay(bookrecord *);void安排(BookRecord *); void pricestat(bookrecord *,const char * output_file_name); void numberstat(bookrecord *,const char * output_file_name); void print_search_and_disp_menu(); void searchbyname(bookrecord *); void searchbyauthor(bookrecord *); Void ShowBlook(BookRecord *); void print_head(); void print_book_record(bookrecord); void print_arrange_menu(); void suchandbycatalog(bookrecord * void structbyppypypublisher(bookrecord *); int today_book_number; int main(int argc,char * argv []){file * fp; char cmd; char编号[10] = {0}; char price_file_name [20] = {0}; char catalog_file_name [20] = {0}; bookrecord book_records [20]; int循环= 1; memset(book_records,0,sizeof(book_records));如果(argc> = 2){fp = open_file( argv [1]); getNumber(argv [1],号码;}{char file_name [] =“dx0112.txt”; fp = open_file(file_name); getNumber(file_name,number);}如果(fp == null){printf(“打开失败!”); return -1;} else {结构(price_file_name,“zj”); strcat(price_file_name,数字); Strcat(price_file_name,“.txt”); strcpy(catalog_file_name,“zl”); Strcat(Catalog_file_name,数字); Strcat(Catalog_file_name,“.txt”);} readbookrecord(book_records,fp); (循环){print_main_menu(); cmd = get_command();切换(CMD){案例的'://查询显示案例的':SearchandDisplay(Book_records);休息;案例'a'://排序案例'a':安排(book_records);休息;案例'p'://统计案例'p':价格(book_records,price_file_name);休息;案例'n'://统计卷案例'n':numberstat book_records,catalog_file_name;休息;案例'q':案例'q':循环= 0;休息;默认值:break;}} fclose(fp);}

责任编辑(赵泽帆

以上就是关于**图书管理系统源码,图书信息管理系统代码**的全部内容,如有需要以上系统,请在搜索框搜索商品或者咨询客服,了解更多请关注蚂蚁资源网。
内容来源于网络,如无意中有侵权,请联系客服核实,以便及时删除,谢谢支持!
  • 全部评论(3)
  • lyrhc
  • 有没有图书管理系统的源代码啊,#include #include #include #include #include #define STACK_INIT_SIZE 10 #define OK 1 #define TRUE 1 #define FALSE 0 #define ERROR 0 struct student /*定义学生类型,用于存放借出的书籍*/ { int carnum; char lendbook[10]; }student[1000]; struct employ /*定义职工类型*/ { int employnum; char employname[15]; int employage; char employsex[2]; char employleve[10]; long int employtage; }employ[50]; struct book /*定义书的类型*/ { int booknum; char bookname[10]; char bookcreat[10]; int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/ }book[1000]; struct car /*借书卡的数据类型*/ { int carnum; char studentname[10]; int studentclass; }car[100]; huanbook() /*还书函数*/ { FILE *fp,*fp2; /*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/ int i,n; int carnum; char lendbook[10]; printf("请你输入你的卡号\n"); scanf("%d",&carnum); fp=fopen("car.txt","r"); /*读取卡号记录*/ for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) /*for循环判断卡号是否存在*/ { if(car[i].carnum==carnum) /*卡号存在,进入下一循环*/ { n=i; fclose(fp); printf("请输入你要还的书的名字\n"); scanf("%s",lendbook); fp=fopen("record.txt","r"); for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) /*判断是否借阅了输入的书*/ { if(strcmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示*/ { fclose(fp); fp=fopen("record.txt","r"); fp2=fopen("bookl.txt","w"); for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) { if(strcmp(student[i].lendbook,lendbook)==0) { continue; /*删除还掉的书的借书记录*/ } fwrite(&student[i],sizeof(struct student),1,fp2); /*写入原来没还的书的记录*/ } fclose(fp); fclose(fp2); fp=fopen("record.txt","w"); fp2=fopen("bookl.txt","r"); for(i=0;fread(&student[i],sizeof(struct student),1,fp2)!=0;i++) { fwrite(&student[i],sizeof(struct student),1,fp); /*将借书记录信息写回*/ } fclose(fp); fclose(fp2); fopen("bookl.txt","w"); /*清临时文件的记录*/ fclose(fp2); fp=fopen("book.txt","r"); fp2=fopen("bookl.txt","w"); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) /*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/ { if(i==n) { book[i].turefalse=1; fwrite(&book[i],sizeof(struct book),1,fp2); /*将还的书的原来状态设为无人借阅的*/ continue; } fwrite(&book[i],sizeof(struct book),1,fp2); } fclose(fp); fclose(fp2); fp=fopen("book.txt","w"); fp2=fopen("bookl.txt","r"); for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++) { fwrite(&book[i],sizeof(struct book),1,fp); /*将临时文件写回*/ } fclose(fp); fclose(fp2); fopen("bookl.txt","w"); /*清临时文件*/ fclose(fp2); printf("还书完毕,按任意键返回\n"); getch(); return 1; } } printf("你没有借这样的书,任意键返回\n"); /*出错提示*/ fclose(fp); getch(); return 0; } } printf("系统没这样的卡,和管理员联系,按任意键返回\n"); /*出错提示*/ fclose(fp); getch(); } findbook() { FILE *fp; char bookname[10]; int ture,i; fp=fopen("book.txt","r"); printf("请输入你要查找的书名\n"); scanf("%s",bookname); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) { if(strcmp(bookname,book[i].bookname)==0) { if(book[i].turefalse==1) { printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat); } else {printf("这本书已经有人借出\n");fclose(fp);return 0;} fclose(fp); return FALSE; } } printf("没有你要查询的书籍\n"); fclose(fp); return FALSE; } findbook1() { FILE *fp; char bookcreat[10]; int ture,i; fp=fopen("book.txt","r"); printf("请输入你要查找的作者名\n"); scanf("%s",bookcreat); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) { if(strcmp(bookcreat,book[i].bookcreat)==0) { if(book[i].turefalse==1) { printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat); } else {printf("这本书已经有人借出\n");fclose(fp);return 0;} fclose(fp); return FALSE; } } printf("没有你要查询的书籍\n"); fclose(fp); return FALSE; } lendcount() { FILE *fp; int i,n=0; fp=fopen("record.txt","r"); for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) { printf("卡号:%d 借出的书籍:%s \n",student[i].carnum,student[i].lendbook); n=n+1; } fclose(fp); printf("目前共有%d本书借出\n",n); printf("按任意键\n"); getch(); return n; } chabook() { char ch5; do { printf("---------------欢迎进入图书查询系统!--------------\n"); printf(" 1:\n"); printf(" 2:\n"); printf(" 0:\n"); printf("请输入0--2,其他输入非法!\n"); scanf("%s",&ch5); switch(ch5) { case '1':findbook();getch();break; case '2':findbook1();getch();break; case '0':break; default:printf("无此操作\n");getch();break; } }while(ch5!='0'); return FALSE; } lendbook() { FILE *fp,*fp2; int i,n; int carnum; printf("请你输入你的卡号\n"); scanf("%d",&carnum); fp=fopen("car.txt","r"); for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) { if(car[i].carnum==carnum) { n=i; fclose(fp); printf("请输入你要借阅的书的名字\n"); scanf("%s",student[n].lendbook); fp=fopen("book.txt","r"); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) { if(strcmp(book[i].bookname,student[n].lendbook)==0) { if(book[i].turefalse==0) {printf("对不起,此书有人借出,请借其他书\n");fclose(fp);getch();return;} else fclose(fp); fp=fopen("record.txt","a+"); student[n].carnum=carnum; fwrite(&student[n],sizeof(struct student),1,fp); fclose(fp); fp=fopen("book.txt","r"); fp2=fopen("bookl.txt","w"); for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) { if(strcmp(book[i].bookname,student[n].lendbook)==0) { book[i].turefalse=0; fwrite(&book[i],sizeof(struct book),1,fp2); continue; } fwrite(&book[i],sizeof(struct book),1,fp2); } fclose(fp); fclose(fp2); fp=fopen("book.txt","w"); fp2=fopen("bookl.txt","r"); for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++) { fwrite(&book[i],sizeof(struct book),1,fp); } fclose(fp); fclose(fp2); fopen("bookl.txt","w"); fclose(fp2); printf("借书完毕,按任意键返回\n"); getch(); return; } } printf("不存在这样的书,任意键返回\n"); fclose(fp); getch(); return; } } printf("你的卡号不存在,请申请新卡,按任意键返回\n"); fclose(fp); getch(); } carcount() { FILE *fp; int i,n=0; fp=fopen("car.txt","r"); for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) { printf("第%d张卡\n",i+1,car[i].carnum,car[i].studentname,car[i].studentclass); n=n+1; } fclose(fp); printf("目前共有%d本书\n",n); printf("按任意键\n"); getch(); } delcar() { FILE *fp,*fp2; int i; int carnum; char choice; fp=fopen("car.txt","r"); fp2=fopen("bookl.txt","w"); printf("请输入你要删除的卡号\n"); printf("如果你输入的卡号存在,系统自动删除该信息!如果不存在,系统不做任何改动\n"); scanf("%d",&carnum); for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) { if(car[i].carnum!=carnum) { fwrite(&car[i],sizeof(struct car),1,fp2); } } fclose(fp); fclose(fp2); printf("是否真的要删除该卡?删除后该书籍的所有信息将无法恢复《Y/N》\n"); scanf("%s",&choice); if(choice=='y'||choice=='Y') { fp=fopen("car.txt","w"); fp2=fopen("bookl.txt","r"); for(i=0;fread(&car[i],sizeof(struct car),1,fp2)!=0;i++) { fwrite(&car[i],sizeof(struct car),1,fp); } fclose(fp); fclose(fp2); fp2=fopen("bookl.txt","w"); fclose(fp2); printf("按任意键返回\n"); getch(); return; } else { printf("按任意键返回\n"); getch(); return; } } addcar() { FILE *fp; int i=0; fp=fopen("car.txt","a+"); printf("请你输入卡号\n"); scanf("%d",&car[i].carnum); printf("请你输入学生姓名\n"); scanf("%s",car[i].studentname); printf("请你输入班级\n"); scanf("%d",&car[i].studentclass); fwrite(&car[i],sizeof(struct car),1,fp); fclose(fp); printf("输入完毕,任意键返回\n"); getch(); }
  • 2021-09-08 18:13:51
  • 电竞比分源码专营
  • 展开所有#include#包含#include#define n 100 // book的struct book {char标题[30]; int号码; Char作者[30];浮价; int store; char borrower_name [20]; Char Borrower_Gender [5]; int borrower_number;} s [n]; int m = 0; void输入(Structbook * P); //输入书信息禁止保存(Structbook * P); //保存书籍信息void读取(StructBook * P); //阅读书信息void搜索; //查找书信息void del(Structbook * P); //删除书籍信息void借用(StructBook * P); //借用书籍无效(StructBook * P); //返回栏void main(){int x; do {printf(“************************* ***********菜单******** ****************************** \ n“”*********** 1.输入书籍信息********** \ n“”********** 2.查找书籍信息********** \ n“”*********** 3。删除书籍信息********** \ n“”*********** 4.借书********* \ n“** *** ****** 5.退货********** \ n“”********** 0.退出********* * \ n“ ); Printf(“*********************************************** ************************************************** ************************************************** ************************************************** ************************************************** ************************************* ************* *************************** \ n“); PRINTF(”请在0 -5选择,END \ n“中输入键“); scanf(“%d”,&x);切换(x){案例1:输入(&s [0]);休息;案例2:搜索(&s 0]);休息;案例3:del(&s [0]);休息;案例4:借用(&s [0]);休息;案例5:Retur(&S [0]);休息;案例0:休息; }}} while(} void输入(结构簿* p){int y; for(; p {printf(“请输入标题:”); scanf(“%s”,p->标题)printf(“请enternumber :“); scanf(”%d“,&p-> number); printf(”请输入作者:“); scanf(”%s“,p->作者); printf(”请输入书籍价格:“); scanf(”%f“,&p->价格); printf(”请输入书籍数量:“); scanf(”%d“,&p-> store); m ++; printf (“%d信息已经完成完成后,您是否继续?\ n按任意键继续,按0按钮结束。”,m); scanf(“%d”,&y); / /阅读是否继续if(y == 0){保存(&s)[0]);读(&s [0]); //呼叫读取文件函数break;}}}}}}}}}}}}}}}}}}}}}}}}}}}} void搜索(结构簿* p) //查询模块{int n; char name1 [20]; char name2 [20]; char c [3];做{p =&s [0]; printf(“\ t请选择查找方法:\ /打印查询菜单”printf(“1.按To Book”\ n 2通过作者返回\ n 0.2); printf(“请选择:\ n \ n“在0-2中); scanf(”%d“,&n); //读取查找方法if(n == 0)中断;切换(n){case 1:printf(”请输入标题:\ n“); scanf(”%s“,name1);休息;案例2:printf(”请输入作者:\ n“); scanf(”%s“,name2); break;} for( ; p {read(&s [0]); //呼叫读取功能if(strcmp(p->标题,name1)== 0 | strcmp(p-> author,name2)== 0){printf(“ \ n查找簿信息成功!\ n“); printf(”编号id作者价格编号\ n“); printf(”% - 10s%-10d%-10s%-10.2f%-10d \ n“, p->标题,p->号码,p->作者,p->价格,p->商店); //打印信息break;}} printf(“你继续找到吗?\ n”是“类型”是“,”否“请按任意键,返回菜单\ n”); scanf(“%s”,c);} while(strcmp(c,“是”)== 0); //判断是否结束} void del(结构簿* p)//删除模块{int i; STRICT BOOK * P1,* P2; char name1 [20]; Char Name2 [20]; char c [3]; int n; do {p =&s [0]; printf(“请选择删除”; \ n“); //打印删除菜单printf(“1.按照书名删除\ n \ n 2.按作者删除\ n 0.返回\ n”); Printf(“请选择:\ n \ n”在0-2); scanf(“%d”,&n); //读取查找聚会// if(n == 0)中断switchh(n){casse 1:printf(“请输入标题:\ n”); scanf(“%s”,name1);休息;案例2:Printf(“请输入作者:\ n”); scanf(“%s”,name2);休息;读(&s [0]); //呼叫阅读for(i = 0; i {i(strcmp(p->标题,name1)== 0 || strcmp(p-> author,name2)== 0){p1 = p; for(p2 = p1 + 1 ; p2 <=&s[m];p1++,p2++) { strcpy(p1->标题,p2->标题); strcpy(p1->作者,p2->作者); p1-> number = p2-> number; p1-> store = p2->商店; p1->价格= p2->价格; m - ; printf(“删除成功!! \ n”);}} else {printf(“没有书记记录!!”); break;}} printf(“你会继续删除吗?”是“请输入”是“,”否“请按任意键,返回菜单\ n”); scanf(“%s”,c); //阅读是否继续保存(&s [0]); //呼叫保存功能}(strcmp(c,“是”)== 0); // deconstive继续删除} voidborrow(structbook * p)//借用模块{int z; char name3 [20],name4 [20] ; char w [3]; do {p =&s [0]; printf(“请找到您想要借书!”); printf(“请修理CT查找方法:\ n“); //打印查询菜单printf(”1.按标题查找\ n 2.查找\ n 0.返回\ n“由作者printf(”请选择:\ n返回\ n“在0-2); scanf(“%d”,&z); //读取查找方法if(z == 0)中断;切换(z){case 1:printf(“请输入标题:\ n “); scanf(”%s“,name3);休息;案例2:printf(”请输入作者:\ n“); scanf(”%s“,name4); break;}读(&s [0 ]); //调用(; p {if(strcmp(p->标题,name3)== 0 | strcmp(p->作者,name4)== 0 {printf(“\ n”成功! \ n“); printf(”名称编号作者价格编号\ n“); printf(”% - 10s%-10d%-10s%-10.2fs%-10d)\ n“,p->标题,p- >号码,P->作者,P->价格,P->商店); //打印信息Printf(“请输入您的姓名:”)Scanf(“%s”,p->借款台_姓名); Printf(“请输入您的性别:”); scanf(“%s”,p-> borrower_gender); Printf(“请输入您的学号:”); Scanf(“%d”,&p-> borrower_number); P->商店 - ; Printf(“借用成功!\ n”); Printf(“标题号作者”价格数量书主题性别学习\ n“); Printf(“% - 10s%-10d%-10s%-10.2f%-10d%-10s%-10s%-10d \ n”,p->标题,p->数字,p->作者,p->价格,p->博士_name,p->伯罗瑟_gender,p->伯罗瑟_number; break; printf(“继续借一本书”); printf(“是”请输入“是” ,“否”请按任意键,返回菜单\ n“); scanf(”%s“,w); //读取是否继续保存(&s [0]); //调用保存函数}(strcmp (W,“是”)== 0); //判断是否继续借书} void Retur(Structure){int e,f; Char Name5 [20]; Char Name6 [20]; char t [3]; do {p =&s [0]; printf(“请寻找您的图表!”); printf(“请选择查找模式:\ n”); //打印查询菜单printf(“1.按标题查找\ n 2.根据作者查找\ n 0.返回\ n”); Printf(“请选择:\ n \ n”在0-2); SCANF(“%D”,&E); //如果(e == 0)中断,请阅读查找方法;切换(e){案例1:printf(“请输入标题:\ n”); scanf(“%s”,name5);休息;案例2:Printf(“请输入作者:\ n”); scanf(“%s”,name6);休息;读(&s [0]); //调用(; p {if(strcmp(p->标题,name5)== 0 || strcmp(p-> author,name6)== 0){printf(“查找书信息成功!\ n“); Printf(”确认书籍应该被按下“1”!“); // Infirm仍然是一本书scanf(“%d”,&f); if(f == 1){struct(p-> borrower_name,0“); strcpy(p-> borrower_gender,“0”); p-> borrower_number = 0; P - > Store ++; Printf(“由书借来的标题书籍数量\ n”); Printf“%-10s%-10d%-10s%-10.2f%-10d%-10s%-10s%-10d \ n”,p->标题,p->数字,p->作者,p->价格,p->商店,p-> borrower_name,p-> borrower_gender,p-> borrower_number); //打印信息} break; else {printf(“没有书记!”);打破; printf(“是继续持续预订\ n]); printf(“?”是“类型”是“,”否“按任意键返回菜单\ n”); scanf(“%s”,t); //读取是继续保存(&s [0]); //调用保存函数}(strcmp(t,“是”)== 0); //判断是否持续的书籍} void保存(structbook * p)//保存文件{file * fp,* fp1; int 1; ((fp = fopen(“tushu.txt”,“wb”))== null)//打开文件并确定错误{printf(“创建文件失败!\ n \ n”); //打印错误提示getchar();返回;如果(fp1 = fopen(“book.txt”,“wb”))== null)//打开文件并确定错误是否是{printf(“创建文件失败!\ n”); //打印错误提示getchar();返回;} for(i = 0; i ix)写(p,sizeof(结构簿),1,fp)== 0)//将数据写入文件,并确定错误printf(“”\ n \ n “在文件中!\ n \ n”); FPRINTF(FP1,“%d”,m); fclose(FP); //关闭文件fclose(fp1); //关闭文件} void读取(结构簿* p)//读取信息模块{file * fp,* fp1; INT I; if((fp = fopen(“tushu.txt”,“rb”))== null)// opens文件,并确定错误{printf(“错误,请检查文件是否存在,按任意键返回直播菜单”); //打印错误提示getchar();}如果(fp1 = fopen(“book.txt”,“rb”))== null)//打开文件并确定错误{printf(“创建文件失败!\ n \ n“); //打印错误提示getchar();返回; FSCANF(FP1,“%D”,&M); fclose(FP1); //关闭文件(i = 0; i {fread(p,stizeof(结构书),1,fp; //读取信息来自文件} fclose(fp); //关闭文件}您可以修改保存的文件地址自己。希望可以帮忙
  • 2021-09-08 18:13:51
  • gyq
  • / ************************************************* * ************************************************* ************ /#包括 #include #include #include //使用命名空间std输入/输出文件流; const int maxr = 100; //大多数读者const int maxb = 100; // Upli Book Const金额= 5 //每个读者借用了五本书//阅读器类,实现了读者信息类阅读器的描述{私有:int标签; //删除标签1:已删除0:未选择的INT NO; //阅读器号char名[10]; //读者int borbook [maxbor]的名称; //公共由书籍:e69da5e887aa62616964757a686964616f31333335333666Reader(){}字符*的getName(){返回名称;} //获取名称int gettag(){返回标签; } //获取删除标记int getno(){返回否;} //获取读者号void setName(char na [])//设置您的姓名{struch(name,na); void delbook(){ta​​g = 1; } //设置删除标签1:删除0:没有void addreader(int n,char * na)//增加读者{tag = 0; no = n; Strcpy(名称,NA); for(int i = 0 i >选择;切换(选择){案例'1':cout << "输入读者编号:";cin >>阅读器; cout << "输入读者姓名:";cin >> rname; addreader(ReaderID,Rname);休息;案例'2' :cout << "输入读者编号:";cin >>阅读器; r =查询(readerID);如果(r == null){cout << " 该读者不存在 "<> rname; r-> setname(rname);休息;案例'3':cout << " 输入读者编号:"; cin >>阅读器; r =查询(readerID);如果(r == null){cout <<" 该读者不存在" << endl; break;}r-> delbook();休息;案例'4':cout << "读入读者编号:";cin >>阅读器; r =查询(readerID);如果(r = = null){cout <<"该读者不存在"<< endl;break;}r-> disp();休息;案例'5':disp();休息;案例'6':clear();休息;休息;默认:cout <<"输入错误,请从新输入:";break;}}}//图书类,实现对图书的描述,图书的编号,书名,借出,还入等class Book{private: int tag;//删除标记 1:已删 0:未删int no;//图书编号char name[20];//书名int onshelf;//是否再架 1:再架 2:已借public:Book(){}char *getname() { return name; }//获取姓名int getno(){ return no; }//获取图书编号int gettag(){ return tag; }//获取删除标记void setname(char na[])//设置书名{strcpy(name,na);}void delbook(){ tag=1;}//删除图书void addbook(int n,char *na)//增加图书{tag=0;no=n;strcpy(name,na);onshelf=1;}int borrowbook()//借书操作{if (onshelf==1){onshelf=0;return 1;}return 0;}void retbook()//还书操作{onshelf=1;}void disp()//输出图书{cout << setw(6) << no << setw(18) << name << setw(10)<<(onshelf==1? "在架":"已借") <>选择;开关(CONCHe){案例'1':cout << "输入图书编号:"<>书签; cout << "输入图书书名:"<> bname;附加册(Bookid,Bname);休息;案例'2':COUT << "输入图书编号:"<>书签; b =查询(Bookid); if(b == null){cout << " 该图书不存在 "<> bname; b-> setname(bname);休息;案例'3':cout <<" 读入图书编号:"<>书签; b =查询(Bookid); if(b == null){cout <<" 该图书不存在" << endl; break;}b-> delbook();休息;案例'4':cout << " 读入图书编号:"<>书签; b =查询(Bookid); if(b == null){cout <<" 该图书不存在"<< endl;break;}b-> disp();休息;案例'5':DISP();休息;案例'6':clear();休息;默认值:cout <<"输入错误,请从新输入:";}}}//main() 函数的实现,程序的主界面的引导int main(void){ char choice;int bookid,readerid;RDatabase ReaderDB;Reader *r;BDatabase BookDB;Book *b;while(choice!='0'){ cout <>选择;切换(选择){COPY'1':COUT <<" 借书 读者编号:";cin >>阅读器; cout <<" 图书编号: ";cin >>书签; r = readerdb.query(ReaderID); //查找if(null == r){cout <<" 不存在该读者,不能借书"<< endl;break;}b=BookDB.query(bookid);if (b==NULL){cout <<" 不存在该图书,不能借书"<< endl;break;}if (b->借款()== 0){cout << " 该图书已借出,不能借书"<< endl;break;}r->借贷(b-> getno());休息;案例'2':cout <<"还书\n 读者编号:";cin >>阅读器; cout << " 图书编号:";cin >>书签; r = readerdb.query(ReaderID); if(r == null){cout <<" 不存在该读者,不能还书" << endl;break;}b=BookDB.query(bookid);if (b==NULL){cout <<" 不存在该图书,不能还书" < Retby(); R-> RET.书(B-> getno());休息;案例'3':BookdB.BookData();休息;案例'4':ReaderDB.ReaderData();休息;默认值:COUT <<“输入错误,请从新输入:”}}返回0;我希望解决您的问题。
  • 2021-09-08 18:16:42
最新发布的资讯信息
【简历/资料|内地女明星】 殷茹基本资料( YR个人简历介绍)(2020-12-06 15:19)
【简历/资料|内地女明星】 曹菁基本资料( CJ个人简历介绍)(2020-12-06 15:18)
【简历/资料|内地女明星】 王安妮基本资料( WAN个人简历介绍)(2020-12-06 15:18)
【简历/资料|内地女明星】 白琼基本资料( BQ个人简历介绍)(2020-12-06 15:17)
【简历/资料|内地女明星】 王世霞基本资料( WSX个人简历介绍)(2020-12-06 15:17)
【简历/资料|内地女明星】 宋煜基本资料( SY个人简历介绍)(2020-12-06 15:16)
【简历/资料|内地女明星】 钱增基本资料( QZ个人简历介绍)(2020-12-06 15:16)
【简历/资料|内地女明星】 胡晓黎基本资料( HXL个人简历介绍)(2020-12-06 15:15)
【简历/资料|内地女明星】 李佳慧基本资料( LJH个人简历介绍)(2020-12-06 15:15)
【简历/资料|内地女明星】 张洛嘉基本资料( ZLJ个人简历介绍)(2020-12-06 15:14)
联系客服
网站客服 联系客服
手机版

扫一扫进手机版
返回顶部