图书管理系统的C代码.doc
C#代码清单共1个工程,包含5个类。工程:librarysystem类: Program.cs Readers.cs Manage.cs Menu.cs Publications.cs主类代码:namespace librarysystem /<summary>/类名:Program/功能:工程主类/时间:2015-11-19/</summary>classProgram staticvoid Main(string args) Menu meu = newMenu(); meu.ShowMainMenu();Console.ReadLine(); 出版物类代码:namespace librarysystem /<summary>/类名:Publications/功能:馆藏出版物信息/时间:2015-11-19/</summary>classPublications /*出版物编号*/privatestring PublicationISBN;publicstring PublicationIsbn get return PublicationISBN; set PublicationISBN = value; /*出版物名称*/publicstring PublicationName;/*出版物作者或出版机构*/publicstring PublicationAuthor;/*出版物在架状态*/publicbool PublicationStatus;/*出版物类型*/publicstring PublicationType;public Publications() public Publications(string PublicationISBN,string PublicationName,string PublicationAuthor,string PublicationType,bool PublicationStatus) this. PublicationISBN = PublicationISBN;this.PublicationName = PublicationName;this.PublicationAuthor = PublicationAuthor;this.PublicationType = PublicationType;this.PublicationStatus = PublicationStatus; 读者类代码:namespace librarysystem /<summary>/类名:Readers/功能:已获取权限读者的信息/时间:2015-11-19/</summary>classReaders privatestring ReaderID;publicstring ReaderId get return ReaderID; set ReaderID = value; publicstring ReaderName;publicstring ReaderSe*;publicstring ReaderDepartment;publicstring ReaderMajor;publicstring BowPublication = newstring10"","","","","","","","","",""public Readers() public Readers(string ReaderID, string ReaderName, string ReaderSe*, string ReaderDepartment, string ReaderMajor) this.ReaderID = ReaderID;this.ReaderName = ReaderName;this.ReaderSe* = ReaderSe*;this.ReaderDepartment = ReaderDepartment;this.ReaderMajor = ReaderMajor; 管理类代码:namespace librarysystem /<summary>/类名:Manage/功能:管理员执行图书管理操作/时间:2015-11-19/</summary>classManage publicbool BorrowFlag = false;/*借阅操作成功标志*/publicbool ReturnFlag = false;/*归还操作成功标志*/publicPublications pub_search;/*保存查询到的出版物*/publicReaders Red_valid;/*保存查询到的合法用户*/*声明馆藏出版物数组*/publicPublications pubs=newPublications200;/*声明注册读者数组*/publicReaders reds=newReaders30;/*实例化馆藏出版物对象*/publicPublications pub0 = newPublications("000000","C#从入门到精通","明日科技","书籍",true);publicPublications pub1 = newPublications("000001", "数值分析", "清朗", "书籍", true);publicPublications pub2 = newPublications("000002", "模式识别", "学工", "书籍", true);publicPublications pub3 = newPublications("000003", "中国地理", "地理科学院", "杂志", true);publicPublications pub4 = newPublications("000004", "意林", "市文学艺术界联合会 ", "杂志", true);publicPublications pub5 = newPublications("000005", "大学报", "大学", "报纸", true);publicPublications pub6 = newPublications("000006", "经济学人", "伦敦经济学人报纸*", "杂志", true);publicPublications pub7 = newPublications("000007", "计算机网络", "谢希仁", "书籍", true);publicPublications pub8 = newPublications("000008", "红楼梦", "曹雪芹", "书籍", true);publicPublications pub9 = newPublications("000009", "新东方雅思培训课程", "俞敏洪", "音像制品", true);publicPublications pub10 = newPublications("000010", "MATLAB实用教程", "世杰", "音像制品", true);/*实例化已注册读者对象*/publicReaders red0 = newReaders("20150000", "华", "男", "电子信息学院", "电子与通信工程");publicReaders red1 = newReaders("20150001", "王鹏", "男", "物理学院", "微电子学");publicReaders red2 = newReaders("20150002","建豪", "男", "数学学院", "现代数学分析");publicReaders red3 = newReaders("20150003", "莉", "女", "化学化工学院", "化学分析");publicReaders red4 = newReaders("20150004", "吴娜", "女", "医学院", "口腔医学");publicReaders red5 = newReaders("20150005", "宋雅茹", "女", "电子信息学院", "光学工程");/*初始化出版物数组*/publicvoid PublicationsInitial() pubs0 = pub0; pubs1 = pub1; pubs2 = pub2; pubs3 = pub3; pubs4 = pub4; pubs5 = pub5; pubs6 = pub6; pubs7 = pub7; pubs8 = pub8; pubs9 = pub9; pubs10 = pub10; /*初始化读者数组*/publicvoid ReadersInitial() reds0 = red0; reds1 = red1; reds2 = red2; reds3 = red3; reds4 = red4; reds5 = red5; /*查询图书操作*/publicbool SearchPublications() string Pub_Name;bool SearchFlag = false; Pub_Name = Console.ReadLine();foreach (Publications pub in pubs) if (pub != null && pub.PublicationName = Pub_Name) SearchFlag = true; pub_search = pub; return SearchFlag; /*借阅图书操作*/publicvoid Borrow() string Red_Name;string Pub_Name; bool ReaderFlag = false; Red_Name = Console.ReadLine();foreach (Readers red in reds) if (red != null && red.ReaderName = Red_Name) ReaderFlag = true; Red_valid = red; if (ReaderFlag) Console.Write("请输入您需要借阅出版物的名称:"); Pub_Name = Console.ReadLine();foreach (Publications pub in pubs) if (pub != null && pub.PublicationName = Pub_Name) BorrowFlag = true; pub.PublicationStatus = false; AddToReders(pub.PublicationName, Red_valid); else Console.WriteLine("抱歉,您是非法读者,不能借阅图书"); /*归还图书操作*/publicvoid Return() string Red_Name;string Pub_Name;bool ReaderFlag = false; Red_Name = Console.ReadLine();foreach (Readers red in reds) if (red != null && red.ReaderName = Red_Name) ReaderFlag = true; Red_valid = red; if (ReaderFlag) Console.Write("请输入您需要归还出版物的名称:"); Pub_Name = Console.ReadLine();foreach (Publications pub in pubs) if (pub != null && pub.PublicationName = Pub_Name) for (int i = 0; i < 10;i+ ) if (Red_valid.BowPublicationi = Pub_Name) ReturnFlag = true; pub.PublicationStatus = true; RemoveFromReders(Pub_Name, Red_valid); else Console.WriteLine("抱歉,您是非法读者,无归还图书信息"); /*添加图书到读者*/privatevoid AddToReders(string PublicationName, Readers red) /*设置借阅上限为10本*/for (int i = 0; i < 10; i+) if (red != null && red.BowPublicationi="") red.BowPublicationi = PublicationName;break; /*从读者对象中移除图书*/privatevoid RemoveFromReders(string PublicationName, Readers red) /*设置借阅上限为10本*/for (int i = 0; i < 10; i+) if (red != null && red.BowPublicationi = PublicationName) red.BowPublicationi = red.BowPublicationi+1; /*新书入库操作*/publicvoid AddPublications(Publications pub) for (int i = 11; i < 200; i+) if(pubsi=null) pubsi = pub; /*添加新读者操作*/publicvoid AddReaders(Readers red) for (int i = 6; i < 30; i+) if (redsi = null) redsi = red; /*查询读者信息*/publicvoid RedInde*() string Red_Name;bool ReaderFlag = false; Red_Name = Console.ReadLine();foreach (Readers red in reds) if (red != null && red.ReaderName = Red_Name) ReaderFlag = true; Red_valid = red; if (!ReaderFlag) Console.WriteLine("抱歉,您是非法读者,无法查到您的借阅信息"); 菜单类代码:namespace librarysystem /<summary>/类名:Menu/功能:显示效劳页面/时间:2015-11-19/</summary>classMenu /创立一个具体的管理对象Manage mag = newManage();/声明一个读者对象Readers red;/声明一个出版物对象Publications pub;publicvoid ShowMainMenu() mag.PublicationsInitial(); mag.ReadersInitial();Console.WriteLine("欢送使用图书管理系统V1.0");Console.WriteLine("-");Console.WriteLine("1.查询图书");Console.WriteLine("2.借书效劳");Console.WriteLine("3.还书效劳");Console.WriteLine("4.新出版物入库");Console.WriteLine("5.录入新读者");Console.WriteLine("6.查询读者的借阅信息");Console.WriteLine("7.退出管理系统");Console.WriteLine("-");bool flag;do flag = false;Console.WriteLine("请选择:");string key = Console.ReadLine();switch (key) case"1":Console.Write("请输入需要查询图书的书名:"); ShowPubInfo();break;case"2":Console.Write("请输入您的*:"); mag.Borrow(); ShowBorrowInfo(); break;case"3":Console.Write("请输入您的*:"); mag.Return(); ShowReturnInfo(); break;case"4":Console.WriteLine("请按照提示逐步输入需要入库出版物的信息"); ShowAddPublications();break;case"5":Console.WriteLine("请按照提示逐步输入新注册读者的信息"); ShowAddReaders();break;case"6":Console.Write("请输入您的*: "); mag.RedInde*(); ShowRedPubInfo(mag.Red_valid);break;case"7": flag = false;break;default:Console.WriteLine("无此业务,是否重新选择y/n?");string answer = Console.ReadLine();if (answer != "y") flag = false; else flag = true; break; while (flag); /*显示查询到的出版物信息*/publicvoid ShowPubInfo() if (mag.SearchPublications() Console.WriteLine("您要查询的出版物信息:");Console.WriteLine("-");Console.WriteLine("编号: " + mag.pub_search.PublicationIsbn);Console.WriteLine("出版物名字: " + mag.pub_search.PublicationName);Console.WriteLine("出版物 " + mag.pub_search.PublicationAuthor);Console.WriteLine("出版物类型: " + mag.pub_search.PublicationType);if (mag.pub_search.PublicationStatus) Console.WriteLine("出版物状态:在架,可借"); else Console.WriteLine("出版物状态:未在架,不可借"); Console.WriteLine("-");Console.WriteLine("");Console.WriteLine("");Console.WriteLine("是否办理其他业务(y/n)"");string answer = Console.ReadLine();if (answer = "y") ShowMainMenu();Console.WriteLine(); else Console.WriteLine("完毕"); else Console.WriteLine("抱歉,未找到该图书!");Console.WriteLine("是否办理其他业务(y/n)"");string answer = Console.ReadLine();if (answer = "y") ShowMainMenu();Console.WriteLine();Console.WriteLine(); else Console.WriteLine("完毕"); /*显示借阅操作结果*/publicvoid ShowBorrowInfo() if (mag.BorrowFlag) Console.WriteLine("恭喜,借阅成功!"); ShowRedPubInfo(mag.Red_valid); else Console.WriteLine("抱歉,借阅失败!");Console.WriteLine("是否办理其他业务(y/n)"");string answer = Console.ReadLine();if (answer = "y") ShowMainMenu(); else Console.WriteLine("完毕"); /*显示归还操作结果*/publicvoid ShowReturnInfo() if (mag.ReturnFlag) Console.WriteLine("恭喜,归还成功!"); ShowRedPubInfo(mag.Red_valid); else Console.WriteLine("抱歉,归还失败!");Console.WriteLine("是否办理其他业务(y/n)"");string answer = Console.ReadLine();if (answer = "y") ShowMainMenu(); else Console.WriteLine("完毕"); publicvoid ShowRedPubInfo(Readers red) Console.WriteLine("当前你的借阅信息如下:");Console.WriteLine("-");Console.WriteLine("编号: " + red.ReaderId);Console.WriteLine("*: " + red.ReaderName);Console.WriteLine("性别: " + red.ReaderSe*);Console.WriteLine("所在院系: " + red.ReaderDepartment);Console.WriteLine("主修专业: " + red.ReaderMajor);Console.Write("已借图书: ");for (int i = 0; i < red.BowPublication.Length-1; i+) if (red.BowPublicationi != "") Console.Write(" "+red.BowPublicationi); Console.WriteLine("");Console.WriteLine("-");Console.WriteLine("");Console.WriteLine("是否办理其他业务(y/n)"");string answer = Console.ReadLine();if (answer = "y") ShowMainMenu(); else Console.WriteLine("完毕"); /*显示新出版物入库的信息*/publicvoid ShowAddPublications() pub = newPublications();Console.Write("请输入出版物的编号: "); pub.PublicationIsbn=Console.ReadLine();Console.Write("请输入出版物的名称: "); pub.PublicationName = Console.ReadLine();Console.Write("请输入出版物的编者: "); pub.PublicationAuthor = Console.ReadLine();Console.Write("请输入出版物的类型: "); pub.PublicationType = Console.ReadLine(); pub.PublicationStatus = true; mag.AddPublications(pub);Console.WriteLine("新出版物入库成功!");Console.WriteLine("是否办理其他业务(y/n)"");string answer = Console.ReadLine();if (answer = "y")