《图书借阅系统VC++[1].pdf》由会员分享,可在线阅读,更多相关《图书借阅系统VC++[1].pdf(51页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-目录 摘要1 1 引言1 1.1 问题的提出1 1.2 任务与分析1 1.2.1 课题任务1 1.2.2 任务分析1 2 需求分析2 2.1 功能需求2 2.2 数据需求2 2.3 性能需求2 3.概要设计2 4.详细设计2 4.1 Qt/Embedded 的安装2 4.2 Qtopia 的安装3 4.3 编写源代码的思路3 4.4 流程图4 5 核心代码5 6.测试分析9 6.1 文件打开测试9 6.2 总体测试9 7 附录10 总结15 致谢16 参考文献17 -摘 要 随着计算机性能的日益增强,用途的日益广泛,面向对象方法为现代解决一些复杂的问题提供了很大的帮助,面对对象程序设计可以更
2、直接描述客观世界存在的事物以及事物之间的相互关系,它所强调的基本原则是直接面对客观事物本身进行抽象并在此基础上进行软件开发,将人类的思维方式和表达方式应用在软件开发中。C+是人类思维的一个重大突破,是程序设计语言发展的一个历史性飞跃。C+语言一方面全面兼容 C,另一方面是支持面向对象的方法。学习 C+程序设计语言,可以让我们对程序设计语言的理解和运用深刻化、时代化。课程设计是我们从理论走向实践的桥梁,是锻炼我们运用理论知识能力的良机。随着计算机的普及,社会信息量的与日俱增,周围信息储存的主要媒介之一图书,其数量规模比以前任何时候都大,无能个人还是图书管理部门都需要使用有效而又方面的方式来管理图
3、书管的书籍。现代人的时间观越来越强,生活也越来越忙,由于相互之间信息交流的量也越来越大。在学校对于学生借阅图书的基本信息的管理,如何使其更加方便快捷也成了人们追求的目标,并且急需这样的软件来完成更多的功能。关键词:图书借阅信息管理 C+程序设计 软件开发 -1 引 言 1.1 问题的提出 在 C+中,类是面向对象程序设计方法的核心,利用它可以实现对数据的封装、隐蔽,通过类的继承和派生,能够实现对问题的深入抽象描述,为解复杂的实际问题提供了更为简洁明了的思维方式与开发工具。在面向过程的结构化程序设计中,程序的模块是由函数构成的。函数是逻辑上相关的语句与数据的封装,用于完成特定的功能,类是逻辑上相
4、关的函数与数据的封装,它是对所要处理的问题的抽象描述。因此,后者的集成程度更高,也就更适合用于大型复杂程序的开发。理论知识的学习,是循序渐进的,在将书本知识运用到实践的过程中,则需要把每一步的基础知识都综合起来解决问题,课程设计是一个理论与实践相融合的平台,在学校中对于图书馆学生借阅图书管理是一类常见的需求问题,好的管理系统,可以让信息组织得清晰明了,可以节约学生和工作人员大量的时间来查询书籍和相关的质料,可以避免遗忘,混乱等麻烦。图书馆借阅系统通常具有查询,修改,删除,等基本功能。在这次的课程设计中,我的课题是图书借阅系统,与一般的借阅管理系统类似,我需要解决的问题主要有:首先,设计总体思路
5、;其次,如何实现这些功能;最后,如何对这些功能的实现进行优化,给用户提供较好的操作环境与界面。1.2 任务与分析 1.2.1 课题任务 建立一个图书借阅系统,对图书、读者和借书情况进行处理。各对象有以下信息需要处理:1.每本书有书号、书名和作者姓名;2.读者有借书证号、读者姓名、最大借阅量;3.能提供若干本书由读者进行选择,打印出读者的借书情况 4.图书和读者信息应保存在相应的文件中便于查询和借阅。1.2.2 任务分析-(1)定义一个 book 类对图书的相关信息进行封装,由 manage()函数为用户提供友好的界面方便用户的选择,creat()函数实现对图书的新建,rework()函数对图书
6、的修改,delet()函数对图书的删除等功能;(2)定义一个 user 类对借阅者的相关信息进行封装,由 manage()函数为用户提供友好的界面方便用户的选择,creat()函数实现对借阅者信息的新建,rework()函数对图书的修改,delet()函数对图书的删除等功能;(3)再定义一个 record 类对借阅者的相关借阅信息的记录和一个派生类 mulclass 由函数 manage()实现友好界面,borrow()函数实现借阅者借阅图书的有关信息是否能借阅,back()函数实现借阅者归还书的相关信息,book_query()函数实现相关图书资料的查询,user_query()函数实现借阅
7、者历史的查询;(4)定义主函数,使用 switch 语句根据用户的输入信息与所要实现的相关功能的函数匹配来实现用户的目的。-2 系统分析 人类对问题的认识由一个逐步深入的过程,面向对象的程序设计方法就比较适合人来认识问题的客观规律。对具体问题进行分析、抽象,将其中的一些属性和行为抽象成相应的数据和函数,封装到类中,用这个类在计算机中描述显示世界中的问题。这里将完成一个图书借阅系统程序的设计,把借阅者和图书的信息分别封装在类中。系统中是运用 C+的主要特点对各个不同功能要求设计一个函数来实现,而这些函数由设计为相应不同类的共有成员,而数据则设计为是由成员,用户通过清晰的界面进入完成想要实现的功能
8、。先理清思路然后画出大概的流程图,设计一个比较清楚的程序,改程序主要是分别完成对图书和借阅者的新建、修改、删除相关信息的查询。而图书和读者信息应保存在相应的文件中。2.1 功能需求 设计一个图书类 book,包括图书的新建、修改、删除和借阅者类 user 包括借阅者的新建、修改、删除,mulclass 类则实现图书的借阅和归还,查询图书和借阅这借阅的历史,其中设计一个 record 类对实现对借阅者的相关借阅信息的记录,其中在 mulclass类内嵌子对象 abook、arecord 和 asuer。用 I/O 流对象引用作参数的成员函数实现文件存取,便于查询、修改和删除。完成借阅者对图书借阅
9、的查询,浏览所有图书信息,查询自己借阅图书的信息,管理者修改借阅者和图书的信息 ,删除信息等并关闭系统功能。各子函数要求实现如下功能:1.新建图书的信息在文件中 2.对图书信息的修改 3.对图书馆现不存在的图书删除 4新建借阅者的有关信息在文件中 5.对借阅者信息的修改 6.对不存在的借阅者删除-7.对要借图书的信息查询 8.对归还图书的操作 9.对图书管里图书信息的查询 10.对借阅者历史信息的查询。2.1.1 总体要求 1.该系统要求利用面向对象的程序设计过程即使用C+的编程思想来完成基本的设计。2.要求突出函数的特征,以多个函数实现每一个子功能。3.画出功能模版图,采用简单的界面设计。4
10、.有清晰的程序流程图和数据结构的详细定义。2.1.2 本人所做的模块(1)book 类各成员有:如图 2.1 图 2.1 (2)user 类各成员有:如图 2.2 book 类 String name;String no;book();book();void manage();void creat();void rework();void delete();-图 2.2(3)record 类的成员有:如图 2.3 图 2.3(4)派生 mulclass 类的成员有:如图 2.4 user 类 String name;String no;user();user();void manage();v
11、oid creat();void rework();void delete();record 类 record()record()user ause book abook string borrowTime string backTime string backTime mulclass 类 book abook;record arecord user auser;mulclass();mulclass();void manage();void borrow();void back();void query-inter();-3设计思路 构建一主函数通过 mulclass object 对象把
12、其他类的公有成员联系起来,用 switch()函数建立菜单然后进入不同菜单中根据用户通过数字键的选择完成对所需不同功能对应函数的调用。根据题目要求详细设计了如下4 个类,且各个类中各函数实现的作用如下:1.book 类主要是实现对管理、新建、修改、删除成员函数和图书名和其编号的封装 其中公有成员函数:manage():实现用户进入的友好界面功能;creat():实现管理者对图书的新建功能;rework():实现对图书信息的修改功能;delet():实现对图书信息的删除功能。其中私有数据成员为图书的名字和编号。2.user 类主要是实现对管理、新建、修改、删除成员函数和借阅者姓名和其编号的封装。
13、其中公有成员函数:manage():实现用户进入的友好界面功能;creat():实现管理者对借阅者新成员的新建功能;rework():实现对借阅者信息的修改功能;delet():实现对借阅者信息的删除功能。其中私有数据成员为借阅者的姓名和编号。3.record 类主要是实现对一些借阅者信息的封装保护。内嵌借阅者对象,图书对象。将借阅的时间,应还时间,是否超时定义为私有数据成员。4 mulclass 类是将接图书,还图书,图书信息的查询,借阅者借阅历史的查询和以上设计的各个类的对象封装在一起。其中各公有函数成员的作用:manage():实现为用户提供界面的功能;borrow():实现借图书信息查
14、询的功能;-back():实现还图书的功能:query_inter():实现用户查阅信息提供的界面的功能;book_query():实现图书信息的查阅;user_query():实现借阅者借阅历史的查询。4.总体设计 图书借阅归还 信息查询 用户信息管理 退出系统 图书信息管理 新建 修改 删除 新建 修改 删除 借书 还书 图书查询 返回 借阅历史 返回 主函数-5.详细设计与实现 5.1 主函数的阐述 函数原型:int main()设计思路:通过 switch()建立菜单,每个数字对应一个大的功能函数,声明一个 mulclass 的对象 object,通过对象名访问类中所需的函数,用户就可
15、以进入系统根据自己想要实现的要求选择不同的数字键对不同功能函数的调用。核心代码:char inter_face()cout endl endl;cout t=endl t+endl t+图 书 借 阅 系 统 +endl t+endl t+1.图书信息管理 +endl t+endl t+2.用户信息管理 +endl-t+endl t+3.图书借阅/归还 +endl t+endl t+4.信息查询 +endl t+endl t+5.退出系统 +endl t+endl t=endl endl;cout ttt;return getchar();int main()mulclass object;w
16、hile(1)switch(inter_face()case 1:-object.get_abook().manage();break;case 2:object.get_asuer().manage();break;case 3:object.manage();break;case 4:object.query_inter();break;case 5:cout endl tt 谢谢使用!endl endl tt;exit(0);break;default:break;return 0;运行结果:如图 5.1 所示-图 5.1 5.2 图书信息管理模块的具体阐述 函数原型:void book
17、:manage()设计思路:通过 switch()建立菜单,管理员可以根据上面的提示选择想要实现的功能,每个数字对应一个实现功能不同的函数。可以根据选择不同的数字键来实现图书的新建、修改、删除功能。核心代码:void book:manage()while(1)cout endl;cout t endl t endl t 图书信息管理 -endl t endl t 1.新建 endl t endl t 2.修改 endl t endl t 3.删除 endl t endl t 4.返回 endl t endl t endl endl;cout ttt;switch(getchar()case 1
18、:creat();break;case 2:rework();-break;case 3:delet();break;case 4:return;break;default:break;运行结果:如图 5.2 图 5.2 5.2.1 图书信息管理中的新建模块的阐述:函数原型:void book:creat()设计思路:先打开一个名为 bookfile 文件一写的方式将图书新的信息写入文件中并保存。核心代码:void book:creat()-cout endl 根据提示输入新的图书信息 endl endl;cout name;cout endl no;ofstream bookfile;boo
19、k(total.txt,ios:out);/打开文件并输写 bookfile setiosflags(ios:left)setw(20)name no endl;book();cout endl endl 新图书信息已经保存!endl endl;运行结果:如图 5.3 -图 5.3 5.2.2 图书信息管理中的修改模块 函数原型:void book:rewok 设计思路:先输入想要修改的图书编号,打开 bookfile 所指向名为 total 的文件,将里面的信息读出来,然后再打开一个名为 temp 的文件将修改的信息存在里面。在设计思路过程中主要是根据输入的信息与已经存在文件里的信息相比较。
20、核心代码:void book:rework()string findno;cout endl 修改图书信息 endl endl;cout findno;-ifstream bookfile;book(total.txt,ios:in);if(!bookfile)cout endl 对不起信息库为空!endl name no)if(no=findno)flag=true;cout endl 你想修的图书信息如下:endl endl;cout 图书名字:name endl endl 编号:no endl endl endl;cout 请在下面输入新的信息:endl endl;cout name;c
21、out endl no;temp setiosflags(ios:left)setw(20)name no endl;else-temp setiosflags(ios:left)setw(20)name no endl;book();temp.close();if(flag)ofstream bookfile1(total.txt);ifstream temp1(temp.txt);bookfile1 temp1.rdbuf()endl;cout endl 新信息已经保存!endl endl;else cout endl 库中没有你想找的图书!endl endl;运行结果:如图 5.4-图
22、5.4 5.2.3 图书信息管理中的删除模块 函数原型:void book:delete()设计思路:输入用户想要删除的图书信息,用读出的方式打开 total 文件,用写的方式打开 temp 文件记录删除的信息,完成后关闭文件。核心代码:void book:delet()string delno;cout endl 删除信息 endl endl;cout delno;-ifstream bookfile;book(total.txt,ios:in);if(!bookfile)cout endl 对不起信息库为空!endl name no)if(no=delno)flag=true;cout e
23、ndl 你想删除的图书信息如下:endl endl;cout 图书名字:name endl endl;cout 编号:no endl endl;cout 你确定要删除它吗(y/n):;getchar();if(getchar()=n)cout endl endl 图书信息没有删除!endl endl;return;else temp setiosflags(ios:left)setw(20)name no endl;-cout endl endl 图书信息已经成功删除!endl endl;temp.close();book();if(flag)ofstream bookfile1;book(t
24、otal.txt);ifstream temp1(temp.txt);bookfile1 temp1.rdbuf()endl;book();temp1.close();else cout endl 库中没有这个图书的信息!endl endl;运行结果:如图 5.5 -图 5.5 5.3 借阅者信息管理模块的具体阐述 函数原型:void user:manage()设计思路:通过 switch()建立菜单,方便用户的使用,用户根据上面的提示输入不同的数字键实现不同的功能,该过程主要包括了读者信息的新建、修改、删除这三个子函数。核心代码:void user:manage()while(1)cout
25、endl;cout t -endl t endl t 用户信息管理 endl t endl t 1.新建 endl t endl t 2.修改 endl t endl t 3.删除 endl t endl t 4.返回 endl t endl t endl endl;cout ttt;switch(getchar()case 1:-creat();break;case 2:rework();break;case 3:delet();break;case 4:return;break;default:break;运行结果:如图 5.6-图 5.6 5.3.1 用户信息管理中的新建模块 函数原型:
26、void user:creat()设计思路:先输入借阅者的相关信息用写的方式打开名为 userfile 的文件将借阅者的相关信息记录保存下来,文成后关闭文件。核心代码:void user:creat()cout endl 新建用户 endl endl;cout 请根据提示输入新的用户信息:endl endl;cout name;cout endl no;ofstream userfile;user(total.txt,ios:out);userfile setiosflags(ios:left)setw(20)name no endl;user();cout endl 新用户信息已经保存!en
27、dl endl;运行结果:如图 5.7 -图 5.7 5.3.2 用户信息管理中的修改模块 函数原型:void user:rework()设计思路:输入想要修改的借阅者的编号,以读的方式打开 userfile 文件所指的名为total的文件将记录的借阅者的信息读出来,在以写的方式打开userfile文件所指的temp文件将修改的借阅者的信息记录在里面。核心代码:void user:rework()string findno;cout endl 修改用户信息 endl endl;cout findno;-ifstream userfile;user(total.txt,ios:in);if(!u
28、serfile)cout endl 对不起,没有这个用户的信息!endl name no)if(no=findno)flag=true;cout endl 你想修改的用户信息如下:endl endl;cout 姓名:name endl endl;cout 编号:no endl endl;cout 请在下面输入新的信息:endl endl;cout name;cout endl no;temp setiosflags(ios:left)setw(20)name no endl;else -temp setiosflags(ios:left)setw(20)name no endl;temp.cl
29、ose();user();if(flag)ofstream userfile1(total.txt);ifstream temp1(temp.txt);userfile1 temp1.rdbuf()endl;user();temp1.close();cout endl 新信息已经成功保存!endl endl;else cout endl 对不起,没有这个用户的信息!endl endl;运行结果:如图 5.8-图 5.8 3.3.3 用户信息管理中的删除模块 函数原型:void user:delet()设计思路:输入想删除的读者信息,用读的方式打开 total 文件将保存的信息读出来,用写的方式
30、打开 temp 文件来记录修改的借阅者的信息,然后关闭文件。核心代码:void user:delet()cout endl 删除用户信息 endl endl;-string findno;cout findno;ifstream userfile;user(total.txt,ios:in);if(!userfile)cout endl 对不起,用户信息库为空!endl name no)if(no=findno)flag=true;cout endl 你想删除的用户信息如下:endl endl;cout 姓名:name endl endl;cout 编号:no endl endl;cout 你
31、确定在删除吗(y/n):;getchar();if(getchar()=n)temp.close();user();cout endl 信息没有更改!endl endl;-return;else temp setiosflags(ios:left)setw(20)name no endl;cout endl endl 该用户信息已经成功删除!endl endl;temp.close();user();if(flag)ofstream userfile1;user(total.txt);ifstream temp1(temp.txt);userfile1 temp1.rdbuf()endl;us
32、er();temp1.close();else cout endl endl 对不起,没有该用户的信息!endl endl;运行结果:如图 5.9-图 5.9 5.4 图书借阅归还模块的具体阐述 函数原型:void mulclass:manage()设计思路:通过 switch()建立菜单,用户根据菜单上的提示选择不同的数字键来实现自己所想要实现的功能函数,此菜单主要提供了用户借书和还书的功能,方便人们的选择。核心代码:void mulclass:manage()while(1)-cout endl endl;cout t 图书借阅/归还 endl endl;cout t 1.借图书 endl
33、 endl t 2.还图书 endl endl t 3.返回 endl endl;cout tt;switch(getchar()case 1:borrow();break;case 2:back();break;case 3:return;break;default:break;运行结果:如图 5.10-图 5.10 5.4.1 图书借阅归还中的借阅模块 函数原型:void mulclass:borrow()设计思路:根据输入的图书的编号,然后打开文件根据所输的信息来判断,要是所输的信息存在于原来的文件中,则可以借阅,如不满足借阅者能借阅的条件的则输出无权借阅等相关信息。核心代码:void
34、mulclass:borrow()string name;string no;bool flag=false;bool flag1=false;-string findbook;cout endl 借阅图书 endl endl;cout findbook;ifstream bookfile;book(total.txt,ios:in);if(!bookfile)cout endl 对不起信息库为空!endl name no)if(no=findbook|name=findbook)flag1=true;cout endl 你想借阅的图书信息如下:endl endl;cout 图书名:name
35、endl endl;cout 编号:no endl endl;-string userno;string username;string findno;cout endl endl findno;ifstream userfile;user(total.txt,ios:in);while(userfile username userno)if(userno=findno)flag=true;break;if(flag)time_t timer;time(&timer);string userinfo=infouser+findno+.txt;ofstream userinfo(),ios:ap
36、p);userinfofile setiosflags(ios:left)setw(20)name setw(15)no asctime(localtime(&timer)endl;userinfo();cout endl 这本图书,你已经成功借阅!endl endl;else -cout endl 用户信息中没有你的信息,你不能借走图书!endl endl;break;else temp setiosflags(ios:left)setw(20)name no endl;temp.close();book();if(flag)ofstream bookfile1(total.txt);ifs
37、tream temp1(temp.txt);bookfile1 temp1.rdbuf()endl;book();temp1.close();if(!flag1)cout endl 对不起,库中没有这本图书!endl endl;运行结果:如图 5.11 -图 5.11 5.4.2 图书借阅归还中的还书模块 函数原型:void mulclass:back()设计思路:输入所还的读者的编号,通过 switch()建立菜单,用户根据菜单上的提示选择不同的数字键来实现自己所想要实现的功能函数,此菜单主要提供了用户借书和还书的功能,方便人们的选择。核心代码:void mulclass:back()cou
38、t endl 还图书 endl endl;cout userno;ifstream user(total.txt);if(!user)cout endl 对不起,该用户不存在!endl username userno1)if(userno1=userno)cout endl backno;flag1=true;string bookname;string bookno;string time;bool flag=false;string userfile=infouser+userno+.txt;ifstream userinfo();ofstream temp(infousertemp.tx
39、t);while(userinfofile bookname bookno)getline(userinfofile,time);if(bookno=backno)flag=true;ofstream bookfile(infodicstotal.txt,ios:app);bookfile setiosflags(ios:left)setw(20)bookname bookno endl;book();else-temp setiosflags(ios:left)setw(20)bookname setw(20)bookno time endl;temp.close();userinfo();
40、if(flag)ofstream user1(user();ifstream temp1(infousertemp.txt);user1 temp1.rdbuf()endl;user1.close();temp1.close();cout endl 还图书操作完成!endl endl;break;else cout endl 对不起,你没有借这本图书或者你输入的编号错误!endl endl;break;user.close();if(!flag1)-cout endl 对不起,该用户不存在!endl endl;运行结果:如图 5.12 所示 图 5.12 5.4 信息查询模块的具体阐述 函数原
41、型:void mulclass:query_inter()设计思路:通过 switch()建立菜单,用户根据菜单上的提示选择不同的数字键来实现自己所想要实现的功能函数,此菜单主要提供了图书查询和读者借阅历史查询这两个功能的函数,方便人们的选择。核心代码:void mulclass:query_inter()while(1)cout endl endl t 信息查询 endl endl t 1.图书信息查询 endl endl t 2.用户的借阅历史 endl endl t 3.返回 endl endl;cout tt;switch(getchar()case 1:book_query();-b
42、reak;case 2:user_query();break;case 3:return;break;default:break;运行结果:如图 5.13 图 5.13 5.4.1 信息查询中的图书查询模块 函数原型:void mulclass:book_query()设计思路:输入用户想要查询的图书的编号,用读的方式打开 bookfile 文件根据输入的信息与文件里的信息是否匹配来判断查找,并向使出相关的信息出来。核心代码:void mulclass:book_query()cout endl 图书信息查询 endl endl;cout bookno;ifstream bookfile(in
43、fodicstotal.txt);if(!bookfile)cout endl 对不起,库存为空!endl bookname bookno1)if(bookno=bookno1)cout endl 你要查询的图书信息如下:endl endl;cout 本图书名:bookname endl endl;cout 编号:bookno endl endl;break;运行结果:如图 5.14-图 5.14 5.1.2 信息查询中的借阅历史查询 函数原型:void mulclass:user_query()设计思路:输入用户想要查询借阅者的历史首先看是否是可以借阅图书的用户,若是则根据输入的信息看是否是
44、借阅者名单上的,则通过 user1 文件可以查处借阅者的借阅历史。核心代码:void mulclass:user_query()cout endl 用户的借阅历史 endl endl;cout userno;string username;string userno1;ifstream user1(infousertotal.txt);if(!user1)cout endl 对不起,该用户不存在!endl username userno1)-if(userno=userno1)cout endl 用户:username t 编号:userno endl endl;cout setiosflag
45、s(ios:left)setw(20)图书名 setw(20)编号 借阅时间 endl endl;string userfile=infouser+userno+.txt;ifstream user(user();if(!user)cout endl 该用户还未借过书!endl endl;return;cout user.rdbuf()endl endl;user.close();break;运行结果:如图 5.15 图 5.15 -6 系统测试 测试环境:vc+6.0 软件环境:windows XP,VC+6.0 硬件环境:长城电脑 Intel(R)Pentium(R)4 CPU 2.66G
46、Hz 2.67 GHz,512MB 的内存 6.1 设计测试数据 6.1.1 读者信息管理模块测试(1)测试数据:输入一本图书的信息,设定编号为 001 和书名为语文。(2)测试结果:如图 6.1 所示 图 6.1(3)测试结果分析:能正常运行并新建或添加图书信息的界面,并且有友好的输入提示。-6.1.2 修改图书信息测试(1)测试数据:输入想要修改的图书编号,假设为 001,然后将书名改为 C+编程思想。(2)测试结果:如图 6.2 所示 图 6.2 (3)测试结果分析:当输入想要修改的图书的编号时能正确显示已经存在文件中的信息并显示出该图书的基本信息,说明文件保存成功的。然后能显示出所想要
47、的提示,当输入后也能正确的修改并保存 6.2 总体测试分析 综上所的出该程序是正确的,能按照编程者的意愿实现其功能,由于时间紧迫,因此后面的测试就不在此意义列举出来了。-总结 此次课程设计中用到了类、文件的操作、函数的调用等操作。首先对具体问题进行分析、抽象,将其中的一些属性和行为抽象成相应的数据和函数,封装到类中,用这个类在计算机中描述显示世界中的问题。这里将完成对图书的新建、删除、修改,借阅者的新建、修改、删除,借还图书的操作、借阅者借阅历史的查询等功能,此系统随有一定的缺陷,但总的说来仍有很多值得肯定的地方。如采用菜单的界面能够实现友好的交互,使结构简单明了;用文件写入数据,免去了每次运
48、行时输入数据,使得此程序方便、高效。在这次课程设计中,我学会了很多东西,比如将学到的知识能综合运用到实践中,在我的课题中用到类,这样不仅可以练习类的使用,还可以在与以前学的结构体的对比中更清楚的了解类的作用。特别是对文件的操作有了更进一步的了解和熟练。通过查资料的学习懂得了很多以前不懂的知识,丰富了我的知识面,在能力上也有很大的提高。课程设计是一个既考验我们对知识掌握及运用能力,又考验我们写实验报告的逻辑组织能力。因此通过这次课程设计让我受益匪浅。在完成这次课程设计的的过程中虽然遇到了些问题,但在老师和同学的帮助下最终完成了这次的任务 致 谢 首先我要感谢谢谭三老师的耐心指导和帮助,在他的督促
49、下按时完成这个课程设计,并且对于我们提出的各种问题都能依依完整而仔细的回答,直到我们完全明白为止。再者需要感谢的是教我们 C+的刘兴伟老师,没有他的教导就不会知道怎样完成这个课程设计,也不可能有基础来完成此次的课程设计。整个完成的过程中周围的同学也给了不少帮助,在此真的非常感谢每一位给过我帮助的人!参考文献 1 李强,贾云霞编著.Visual C+项目开发实践.北京:中国铁道出版社,2003 2Islamabad.Software tools for forgery detectionJ.Business line.2001.-3谢勇等。Visual C+6.0 实例精通。北京科学出版社。2000-7