




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/主函数#include#include#includestruct book /*定义书的类型*/ int booknumber; /书号char bookname20; /书名char bookauthor10; /作者int bookstock; /现存量 int bookcount;/总库存 book1000;struct card /*借书卡的数据类型*/ int studentID; /学号char studentname10;/姓名 char lendbook;/已借图书card1000;void main()int a;do printf(ntt 欢迎进入图书管理系统nn);printf(tn);printf(t n);printf(t 图 书 管 理 系 统 n);printf(t n);printf(t 1:注册卡号 n);printf(t 2:会员登陆 n);printf(t 3:管理登陆 n); printf(t 0: 退出 n);printf(t n);printf(tnnn); printf(tt请选择操作类型(0-3):); scanf(%d,&a);switch(a) case 1:addcard();break; case 2:readerland();break; case 3:administratorland();break; case 0:break; default:printf(ntt无效操作,按任意键返回.n);getch();break; while(a!=0); /注册卡号void addcard() style();long i=1000;int j;char t116,t216;reader *temp=head-next;reader *p=(reader*)malloc(sizeof(reader); printf(nn);printf(tn);printf(t n);printf(t 欢 迎 使 用 n);printf(t n);printf(t 注 册 系 统 n);printf(t n);printf(tnnn);printf(n 请输入您的学号:);scanf(%s,p-studentID)printf(n 请输入您的姓名:);scanf(%s,p-name); printf(n 请输入您的密码:);intpsd(t1);if(strlen(t1)password,t1);break;elseprintf(n 您两次输入的密码不一致!);p-residue=10;p-next=NULL;for(j=0;jlendj0=0;p-lendj1=0;if(temp=NULL)p-number=i;head-next=p;p-limit=1;else+i;while(temp-next!=NULL)+i;temp=temp-next;p-number=i;p-limit=0;temp-next=p;Informationreader(p,NULL);/会员登陆void readerland()long num;char pass16;int i=5;reader*reader;style(); printf(nn); printf(t n);printf(t n);printf(t 欢 迎 进 入 n); printf(t n); printf(t 会 员 n); printf(t n); printf(t 登 陆 界 面 n);printf(t n); printf(t nnn); while(1)printf(n请输入您的会员卡号:);scanf(%d,&num);if(reader=S_reader(rhead,num)=NULL)printf(n抱歉。不存在此卡号.n);printf(n请重新输入或返回注册.n)getch();return NULL;elsebreak;while(i0)printf(n 请输入密码:);intpsd(pass);if(strcmp(pass,reader-password)=0) printf(nn); printf(t n); printf(t n); printf(t 登 陆 成 功 n); printf(t n); printf(t nnn); return (reader);else printf(nn); printf(t n); printf(t n); printf(t 密 码 错 误 n); printf(t n); printf(t 请 返 回 重 新 登 录 n); printf(t n); printf(t nnn); return NULL;/会员界面void reader() int b; do printf(nn);printf(tn);printf(t n);printf(t 欢 迎 进 入 会 员 管 理 系 统 n);printf(t n);printf(t 1:个人信息 n);printf(t 2:修改密码 n);printf(t 3:查找图书 n);printf(t 4:借阅图书 n);printf(t 5:归还图书 n);printf(t 0: 返回 n);printf(t n);printf(tnnn);printf(tt请选择操作类型(0-5):); scanf(%d,&b); switch(b)case 1:Informationreader();break;case 2:moditypass().break;case 3:searchbook();break; case 4:lendbook();break;case 5:returnbook();break; case 0:break; default:printf(ntt无效操作,按任意键返回.n);getch();break; while(b!=0);/管理员登陆void administratorlong num;char adm16;char pass8;int i=5; administrator*administrator;style(); printf(nn); printf(t n);printf(t n);printf(t 欢 迎 进 入 n); printf(t n); printf(t 管 理 员 n); printf(t n); printf(t 登 陆 界 面 n);printf(t n); printf(t nnn); while(i0)printf(n请输入您的管理员号n:);intpsd(adm);printf(n请输入密码n:);intpsd(pass);if(strcmp(adm=administrator&pass=password) printf(nn); printf(t n); printf(t n); printf(t 登 陆 成 功 n); printf(t n); printf(t nnn); return (administrator);else printf(nn); printf(t n); printf(t n); printf(t 密 码 或 账 号 错 误 n); printf(t n); printf(t 请 返 回 重 新 登 录 n); printf(t n); printf(t nnn); return NULL;/管理员界面void administrator() int c; do printf(nn);printf(tn);printf(t n);printf(t 欢 迎 进 入 书 籍 管 理 系 统 n);printf(t n);printf(t 1:增加图书 n);printf(t 2:修改图书 n);printf(t 3:删除图书 n);printf(t 4: 书籍统计 n);printf(t 0: 返回 n);printf(t n);printf(tnnn);printf(tt请选择操作类型(0-4):); scanf(%d,&c); switch(c) case 1:addbook();break; case 2:moditybook();break; case 3:delbook();break; case 4:bookcout();break; case 0:break; default:printf(ntt无效操作,按任意键返回.n);getch();break; while(b!=0);/会员个人信息viod Informationreader(reader*tr,book*bhead) int i; book*p; printf(nn); printf(t n); printf(t n); printf(t 读 者 信 息 n); printf(t n); printf(t n); printf(t 学号 姓 名 已借本数 n); printf(t n); printf(t %12d %10s %10s n,tr-number,tr-name,10-tr-residue); printf(t n); printf(t n); printf(t nnn); printf(n 以下为所借图书信息:n);for(i=0;ilendi0=0)continue;elseprintf(n %d,tr-lendi0);p=S_number(tr-lendi0,bhead);printf(n);printf(n 书 号 书籍名称 出版社名称 出版时间 作者 借书日期还书日期);printf(n);printf(n%8d %12s %14s %8d %14s %8d %8d ,p-number,p-name,p-press,p-presstime,p-author,tr-lendi1,tr-returei1);printf(nn);void searchbook() /图书查询系统函数 int ch4; do HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE);printf(ntt1:);printf(tt2:);printf(ntt3:);printf(tt0:);printf(nntt请输入要选择的操作(0-3):);scanf(%d,&ch4); switch(ch4) case 1:findbooknumber();getch();break; case 2:findbookname();getch();break; case 3:findbookauthor(); getchar(); break;case 0: break; default:printf(tt无效操作,按任意键返回.n);getch();break; while(ch4!=0); int findbooknumber()/按书号查阅书籍信息 FILE *fp; char booknumber10; int i; fp=fopen(book.txt,r); printf(ntt请输入你要查找的书号:); scanf(%s,booknumber); for(i=0;fread(&booki,sizeof(struct book),1,fp)!=0;i+) if(strcmp(booknumber,booki.booknumber)=0) printf(ntt这本书的详细资料是:%d %s %s 现存量 d% 总库存 d%nttn,booki.booknum,booki.bookname,booki.author,booki.bookstock); booki.bookcount); if(booki.bookstock!=0) printf(ntt这本书还可借!n); else printf(ntt这本书已借完!n);fclose(fp);return 0; fclose(fp); return 0; printf(ntt没有你要查询的书籍,按任意键返回.n); fclose(fp); return 0; int findbookname()/按书名查阅书籍信息 FILE *fp; char bookname10; int i; fp=fopen(book.txt,r); printf(ntt请输入你要查找的书ming:); scanf(%s,bookname); for(i=0;fread(&booki,sizeof(struct book),1,fp)!=0;i+) if(strcmp(bookname,booki.bookname)=0) printf(ntt这本书的详细资料是:%d %s %s 现存量 d% 总库存 d%nttn,booki.booknum,booki.bookname,booki.author,booki.bookstock); booki.bookcount); if(booki.bookstock!=0) printf(ntt这本书还可借!n); else printf(ntt这本书已借完!n);fclose(fp);return 0; fclose(fp); return 0; printf(ntt没有你要查询的书籍,按任意键返回.n); fclose(fp); return 0; viod findbookauthor()/按作者查阅书籍信息 FILE *fp; char bookauthor10; int i; fp=fopen(book.txt,r); printf(ntt请输入你要查找的书的作者:); scanf(%s,bookautor); for(i=0;fread(&booki,sizeof(struct book),1,fp)!=0;i+) if(strcmp(bookauthor,booki.bookauthor)=0) printf(ntt这本书的详细资料是:%d %s %s 现存量 d% 总库存 d%nttn,booki.booknum,booki.bookname,booki.author,booki.bookstock); booki.bookcount); if(booki.bookstock!=0) printf(ntt这本书还可借!n); else printf(ntt这本书已借完!n);fclose(fp);return 0; fclose(fp); return 0; printf(ntt没有你要查询的书籍,按任意键返回.n); fclose(fp); return 0; /借书系统void lendbook() /借书功能函数HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE); FILE *fp,*fp2; int i,n; int cardnum; fp=fopen(card.txt,r);printf(ntt请你输入你的借书日期: );scanf(%d,&date)for(i=0;fread(&cardi,sizeof(struct card),1,fp)!=0;i+) n=i; fclose(fp); printf(ntt请输入你要借阅的书的名字: ); scanf(%s,studentn.lendbook); fp=fopen(book.txt,r); for(i=0;fread(&booki,sizeof(struct book),1,fp)!=0;i+) if(strcmp(booki.bookname,studentn.lendbook)=0) if(booki.bookcount=0) printf(tt对不起,此书库存为0,请借其他书.按任意键返回.n); fclose(fp); getch(); return; else /booki.bookcount -; fclose(fp); fp=fopen(record.txt,a+); studentn.cardnum=cardnum; fwrite(&studentn,sizeof(struct student),1,fp); fclose(fp); fp=fopen(book.txt,r); fp2=fopen(booktemp.txt,w); for(i=0;fread(&booki,sizeof(struct book),1,fp)!=0;i+) if(strcmp(booki.bookname,studentn.lendbook)=0) booki.bookcount-; fwrite(&booki,sizeof(struct book),1,fp2); continue; fwrite(&booki,sizeof(struct book),1,fp2); fclose(fp); fclose(fp2); fp=fopen(book.txt,w); fp2=fopen(booktemp.txt,r); for(i=0;fread(&booki,sizeof(struct book),1,fp2)!=0;i+) fwrite(&booki,sizeof(struct book),1,fp); fclose(fp); fclose(fp2); fopen(booktemp.txt,w); fclose(fp2); printf(ntt借书完毕,按任意键返回.); getch(); return; printf(ntt很抱歉,不存在这本书,按任意键返回.); fclose(fp); getch(); return; printf(ntt你的卡号不存在,请申请新卡,按任意键返回.); fclose(fp); getch(); /还书系统void returnbook()HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE); FILE *fp,*fp2;int i,temp; int bookexit=0; char lendbook10; fp=fopen(card.txt,r); cardexit=1;temp=i; fclose(fp); printf(ntt请输入你要还的书的名字: ); scanf(%s,lendbook);printf(ntt请输入你还书的日期: ); scanf(%d,date); fp=fopen(record.txt,r); for(i=0;fread(&studenti,sizeof(struct student),1,fp)!=0;i+) if(studenti.lendbook=lendbook) bookexit=1; fclose(fp); fp=fopen(record.txt,r); fp2=fopen(booktemp.txt,w); for(i=0;fread(&studenti,sizeof(struct student),1,fp)!=0;i+) if(studenti.lendbook=lendbook) continue; fwrite(&studenti,sizeof(struct student),1,fp2); fclose(fp); fclose(fp2); fp=fopen(record.txt,w); fp2=fopen(booktemp.txt,r); for(i=0;fread(&studenti,sizeof(struct student),1,fp2)!=0;i+) fwrite(&studenti,sizeof(struct student),1,fp); fclose(fp); fclose(fp2); fopen(booktemp.txt,w); fclose(fp2); fp=fopen(book.txt,r); fp2=fopen(booktemp.txt,w); for(i=0;fread(&booki,sizeof(struct book),1,fp2)!=0;i+) if(i=temp) booki.bookstock+; fwrite(&booki,sizeof(struct book),1,fp);continue; fwrite(&booki,sizeof(struct book),1,fp2); fclose(fp); fclose(fp2); fp=fopen(book.txt,w); fp2=fopen(booktemp.txt,r); for(i=0;fread(&booki,sizeof(struct book),1,fp2)!=0;i+) fwrite(&booki,sizeof(struct book),1,fp); fclose(fp); fclose(fp2); fopen(booktemp.txt,w); fclose(fp2); printf(ntt还书完毕,按任意键返回.n); fclose(fp); fclose(fp); if(bookexit=0)printf(ntt你没有借这本书,按任意键返回.n); getch();/管理登陆void addbook()FILE *fp; int i=1,temp=0,booktemp; char choice=y; fp=fopen(book.txt,a+); while(choice=y|choice=Y) printf(ntt请输入书的书号:); scanf(%d,&booktemp); for(i=0;fread(&booki,sizeof(struct book),1,fp)!=0;i+) if(booktemp=booki.booknum) temp=1; choice=n; if(temp=1) printf(ntt此书号已经存在,按任意键返回.);getch(); else printf(ntt请输入书名:); scanf(%s,booki.bookname); printf(ntt请输入书的作者:); scanf(%s,booki.author); printf(ntt请设定书可借数量:); scanf(%d,&booki.bookcount); fwrite(&booki,sizeof(struct book),1,fp); printf(ntt是否要输入下本书(Y or N):); scanf(%s,&choice); fclose(fp); void modifybook() /修改图书信息FILE *fp,*fp2; ch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年逻辑判断小测试题及答案
- 2025玛纳斯县司法局招聘编制外专职人民调解员(5人)考试备考题库及答案解析
- 2025年新能源微电网稳定性控制与智能电网信息安全保障策略研究报告001
- 合肥市政府门户网站信息公开:现状、问题与优化路径
- 合成生物学视角下颠覆性技术识别指标体系的构建与验证研究
- 基于2025年的绿色环保建材市场发展趋势分析报告
- 2025年教师招聘之《小学教师招聘》经典例题及参考答案详解【b卷】
- 2025年教师招聘之《小学教师招聘》考前冲刺练习题(全优)附答案详解
- 教师招聘之《小学教师招聘》综合检测提分(网校专用)附答案详解
- 2025年教师招聘之《幼儿教师招聘》题库附答案详解【模拟题】
- ZYHZYHC系列自控远红外电焊条烘干炉使用说明书
- 高中政治统编版(2022)必修3(教案)我国法治建设历程(完整文档)
- 游标卡尺的使用flash动画演示教学课件
- 市场营销策划(第五版)第08章 促销策划
- 管理层财务基础知识培训
- 立式储罐重量表
- 电气系统调试方案
- 呋喃树脂msds
- 落实乡村振兴战略山核桃产业振兴五年行动方案
- 中国五矿集团供应商准入承诺书
- 2021年《红高梁模特队》台词(赵本山1997年春晚表演的小品剧本台词)
评论
0/150
提交评论