图书管理系统源代码.doc

上传人:哈尼dd 文档编号:5020194 上传时间:2020-01-29 格式:DOC 页数:20 大小:108.50KB
返回 下载 相关 举报
图书管理系统源代码.doc_第1页
第1页 / 共20页
图书管理系统源代码.doc_第2页
第2页 / 共20页
图书管理系统源代码.doc_第3页
第3页 / 共20页
图书管理系统源代码.doc_第4页
第4页 / 共20页
图书管理系统源代码.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《图书管理系统源代码.doc》由会员分享,可在线阅读,更多相关《图书管理系统源代码.doc(20页珍藏版)》请在三一文库上搜索。

1、#include header.h#include Struct.hint printMainUI() /主界面,并返回选择,int ret = 0;system(cls);printf( n);printf(n ); printf(n );printf(n );printf(n *欢迎来到图书管理系统* );printf(n );printf(n );printf(n *1 管理员 );printf(n );printf(n *2 教师 );printf(n );printf(n *3 学生 );printf(n );printf(n *0 退出程序 );printf(n );printf(

2、n );printf(n n); printf( );scanf(%d,&ret);return ret;int printAdminUI() /管理员界面int ret = 0;system(cls);printf( n);printf(n ); printf(n );printf(n );printf(n *尊贵的管理员你好* );printf(n );printf(n );printf(n *1 图书上架 );printf(n );printf(n *2 图书下架 );printf(n );printf(n *3 图书浏览 );printf(n );printf(n *4 用户管理 );

3、printf(n );printf(n *0 上一层 );printf(n );printf(n );printf(n n); printf( );scanf(%d,&ret);return ret;int printUerManageUI()int ret = 0;system(cls);printf( n);printf(n ); printf(n );printf(n );printf(n *尊贵的管理员你好* );printf(n );printf(n );printf(n *1 教师用户 );printf(n );printf(n *2 学生用户 );printf(n );print

4、f(n *3 浏览全部 );printf(n );printf(n *0 上一层 );printf(n );printf(n );printf(n n); printf( );scanf(%d,&ret);return ret;int printUerFunUI()int ret = 0;system(cls);printf( n);printf(n ); printf(n );printf(n );printf(n *尊贵的管理员你好* );printf(n );printf(n );printf(n *1 查询 );printf(n );printf(n *2 增加 );printf(n

5、);printf(n *3 删除 );printf(n );printf(n *0 上一层 );printf(n );printf(n );printf(n n); printf( );scanf(%d,&ret);return ret;int printTeacherUI() /教师界面int ret = 0;system(cls);printf( n);printf(n ); printf(n );printf(n );printf(n *尊敬的老师你好* );printf(n );printf(n );printf(n *1 借书 );printf(n );printf(n *2 还书

6、);printf(n );printf(n *3 图书浏览 );printf(n );printf(n *4 续借书籍 );printf(n );printf(n *0 上一层 );printf(n );printf(n );printf(n n); printf( );scanf(%d,&ret);return ret;int printStudentUI() /学生界面 int ret = 0;system(cls);printf( n);printf(n ); printf(n );printf(n );printf(n *亲爱的同学你好* );printf(n );printf(n )

7、;printf(n *1 借书 );printf(n );printf(n *2 还书 );printf(n );printf(n *3 图书浏览 );printf(n );printf(n *4 续借书籍 );printf(n );printf(n *0 上一层 );printf(n );printf(n );printf(n n); printf( );scanf(%d,&ret);return ret;int login()/登陆return -1;int AdminOperation(int choice);/管理员界面的操作声明Book* scanBooks(Book* books,

8、int *count);/读取书籍信息void printBooks(Book* books,int count);/打印书籍信息void printBook(Book book);Book* uploadBooks();/图书上架void saveBook(Book book,FILE* fp);/保存书籍信息void saveBooks(Book* books,Book book ,int lastCount,int updateCount);void saveUser(User user,FILE* fp);/保存用户信息void saveUsers(User* users,User u

9、ser,int lastCount,int updateCount,char* fileName);Book* downBooks();User* scanUers(User* users,int *count,char* fileName);void printUsers(User* users,int count);void printUser(User user);void userFunRealized(int choice,char* fileName);void uerManageRealized(int choice);void addUser(char* fileName);v

10、oid delUser(char * fileName);void tip();/提示信息void mainOperation(int choice)/对于主界面的选择操作int choice1= 0;switch(choice)case 1:dochoice1 = printAdminUI();AdminOperation(choice1);while(choice1 != 0);break;case 2:printTeacherUI();break;case 3:printStudentUI();break;case 0:break;default:break;int AdminOpera

11、tion(int choice)/管理员界面的操作int count = 0;switch(choice)case 1:uploadBooks();system( PAUSE ); break;case 2:downBooks();system( PAUSE ); break;case 3:int count=0;Book* books= 0;books = scanBooks(books,&count);printBooks(books,count);system( PAUSE ); break;case 4:int choice1 = 0;dochoice1 = printUerManag

12、eUI();uerManageRealized(choice1);while(choice1 != 0);break;case 0:break;default:break;return choice;Book* scanBooks(Book* books,int* count)int num = 0;/用于存储读取到的书籍种数int i;FILE *fp;books = 0; fp = fopen(Book.txt,r);fscanf(fp,%d,&num);*count = num;if(num 0)books = (Book*)malloc(num * sizeof(Book);for(i

13、 = 0; i num; i+)booksi.bookID = (char*)malloc(sizeof(char) * 256);booksi.bookName= (char*)malloc(sizeof(char) * 256);booksi.author= (char*)malloc(sizeof(char) * 256);booksi.pubDate= (char*)malloc(sizeof(char) * 256);booksi.price= (char*)malloc(sizeof(char) * 256);booksi.style= (char*)malloc(sizeof(c

14、har) * 256);fscanf(fp,%s,booksi.bookID);/读取数编号fscanf(fp,%s,booksi.bookName);/读取书名fscanf(fp,%s,booksi.author);/读取作者fscanf(fp,%s,booksi.pubDate);/读取出版日期fscanf(fp,%s,booksi.price);/读取金额fscanf(fp,%s,booksi.style);/读取类别fscanf(fp,%d,&(booksi.totalCount);/总入库量fscanf(fp,%d,&(booksi.nowCount);/库存量fscanf(fp,%

15、d,&(booksi.outCount);/借出数量fclose(fp);return books;void printBooks(Book* books,int count)int i ;if(count = 0)printf( );printf(图书信息为空!);return ;for(i = 0 ; i count; i+)printf( t第%d款图书 n,i+1);printBook(booksi);void printBook(Book book)printf(n ); printf(n 图书编号:%st图书名称:%st作 者:%st ,book.bookID,book.bookN

16、ame,book.author);printf(n 出版日期:%st金 额:%stt类 别:%st ,book.pubDate,book.price,book.style);printf(n 入库总量:%dt现库存量:%dtt借出数量:%dt ,book.totalCount,book.nowCount,book.outCount);printf(n n); Book* uploadBooks()Book one;Book* books =0;char choice = z;int count=0;int i =0;char bookID256;int flag = -1;/是否库存已有该书籍

17、标志,-1无,大于等于0则有增加books = scanBooks(books,&count);/读取原书籍信息system(cls);/以下开始进行添加操作tip();/输出提示信息printf(n请你输入图书编号:);scanf(%s,bookID);for(i = 0; i count;+i)if(strcmp(bookID,booksi.bookID) = 0)flag = i;/存在某种书籍只需要改变数量if(flag != -1)printf(n管理员你好,你正在添加编号为%s的书籍为已有书籍。,bookID);printBook(booksflag);printf(n你确定更新其

18、数量吗?(1-y,0-n);while(!(choice = y| choice = Y|choice = n|choice = N)scanf(%c,&choice);if(choice = y | choice = Y)/更改入库量,现存数量printf(n输入更新数量:);scanf(%d,&one.totalCount);booksflag.totalCount += one.totalCount;booksflag.nowCount += one.totalCount;saveBooks(books,one,count,0);printf(n成功添加编号为%s的书籍:%d本n,boo

19、kID,one.totalCount);elseone.bookID = (char*)malloc(sizeof(char) * 256);one.bookName= (char*)malloc(sizeof(char) * 256);one.author= (char*)malloc(sizeof(char) * 256);one.pubDate= (char*)malloc(sizeof(char) * 256);one.price= (char*)malloc(sizeof(char) * 256);one.style= (char*)malloc(sizeof(char) * 256

20、);printf(n管理员你好,你正在添加编号为%s的书籍为新进书籍。你确定归类它吗?(1-y,0-n),bookID);while(!(choice = y| choice = Y|choice = n|choice = N)scanf(%c,&choice);if(choice = y | choice = Y)/录取新书籍信息printf(n图书编号:);scanf(%s,one.bookID);/读取数编号printf(n图书名称:);scanf(%s,one.bookName);/读取书名printf(n作 者:);scanf(%s,one.author);/读取作者printf(n

21、出版日期:);scanf(%s,one.pubDate);/读取出版日期printf(n金 额:);scanf(%s,one.price);/读取金额printf(n类 别:);scanf(%s,one.style);/读取类别printf(n入库总量:);scanf(%d,&one.totalCount);/总入库量printf(n现库存量:);scanf(%d,&one.nowCount);/库存量printf(n借出数量:);scanf(%d,&one.outCount);/借出数量saveBooks(books,one,count,1);/写入文件return books;Book* downBooks()Book one;Book* books =0;char choice = z;int count=0;int i =0;char bookID256;int flag = -1;/是否库存已有该书籍标志,-1无,大于等于0则有books = scanBooks(books,&count);/读取原书籍信息system(cls);/以下开始进行添加操作tip();/输出提示信息printf(n请你输入图书编号

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1