C语言图书管理系统Word格式.docx
《C语言图书管理系统Word格式.docx》由会员分享,可在线阅读,更多相关《C语言图书管理系统Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
书籍管理可以把新书添加到系统当中,修改书籍的详细资料等。
注册会员功能,借阅书籍的学生必须注册会员才可以借书,通过注册会员来添加该学生的基本信息。
通过系统来办理借书手续以记录该学生的借书信息。
学生借书模块能够查询借阅学生的信息和该学生的借书的信息。
还书模块功能,学生把书籍归还后系统会清楚该学生的借书记录。
员工管理系统,把员工的信息录入系统可以快速的查阅员工的信息,是管理更方便快捷。
图书借阅管理系统功能概况,如图1所示
图1主界面框架图
2.2图书管理模块设计思路
图书管理模块包括书籍统计、查询图书馆里书籍的基本信息,图书资料修改,添加新书和修改旧书的资料,删除图书,图书馆不想保存的书可以通过系统删除书籍来删除系统里面以前保留书的记录。
3.设计结果与分析
3.1创建工程框架
创建工程:
从“开始”菜单中选择“程序”|MicrosoftVisualStudio6.0|Microsoft
VisualC++6.0,显示VisualC++6.0开发环境主窗口。
单击“文件”菜单中的“新建”命令,显示新建对话框。
在“工程”选项卡中,选择Win32ConsoleApplication(Win32控制台应用程序)。
在位置文本框中指定一个路径d:
\clab,在工程名称文本框中为工程输入一个名字“lab1_1”,单击确定按钮。
在弹出的Win32ConsoleApplication对话框中,选择“一个空工程”,单击“完成”按钮。
如图2所示
图2新建工程
最后在“新建工程信息”对话框中,单击“确定”按钮,完成项目的建立。
图3创建空工程
图4创建源程序
编程运行后就可以使用了,可以查阅图书,比如书籍的序号、书名、以及作者等。
借阅图书模块查询学生的借书信息等。
管理系统模块包括员工的管理和书籍的管理。
还书模块,学生还书后系统就会清楚借书记录。
最后模块是退出功能使用后可以退出系统。
按照如图5所示进行相关操作。
图5系统操作界面
3.2图书管理模块设计
3.2.1书籍统计
书籍统计的程序,通过该程序的正确运行可以查阅图书、借阅图书、管理图书以及还书的相关操作。
选择3管理图书然后会显示下一界面再选择4就可以进行书籍统计了,结果如图6所示。
图6书籍统计
书籍统计函数
bookcount()
{
FILE*fp;
inti,n=0;
fp=fopen("
book.txt"
"
r"
);
for(i=0;
fread(&
book[i],sizeof(structbook),1,fp)!
=0;
i++)
if(book[i].booknum!
=0&
&
strlen(book[i].bookname)!
strlen(book[i].bookcreat)!
=0)
printf("
第%d本书<
序号:
%d书名:
%s作者:
%s状态:
%d>
\n"
i+1,book[i].booknum,book[i].bookname,book[i].bookcreat,book[i].turefalse);
n=n+1;
}}
fclose(fp);
目前共有%d本书\n"
n);
按任意键\n"
3.2.2删除图书
删除图书的程序,程序运行后可以选择相关选项,选择删除图书来进行图书删除,删除图书之前会显示警告是否真的要删除该图书,以便操作者误删图书。
运行结果如图7所示。
图7删除图书
删除图书成功如图8所示
图8删除成功
删除图书函数
delbook()
FILE*fp,*fp2;
inti;
charbookname[10],choice;
fp2=fopen("
bookl.txt"
w"
请输入你要删除的书名\n"
如果你输入的书名存在,系统自动删除该信息!
如果不存在,系统不做任何改动\n"
scanf("
%s"
bookname);
if(strcmp(bookname,book[i].bookname)!
fwrite(&
book[i],sizeof(structbook),1,fp2);
}
fclose(fp2);
是否真的要删除该书籍?
删除后该书籍的所有信息将无法恢复《Y/N》\n"
&
choice);
if(choice=='
y'
||choice=='
Y'
)
book[i],sizeof(structbook),1,fp2)!
book[i],sizeof(structbook),1,fp);
按任意键返回\n"
getch();
return;
else
3.2.3修改图书资料
修改图书资料程序,运行后可以根据预期结果来进行相关操作,修改图书资料包括修改图书序号、书名、和作者。
运行结果如图9所示。
图9图书资料修改
图书资料修改成功后统计结果如图10所示
图10图书资料修改成功
修改图书资料函数
changebook()
请你输入要修改的书籍的书字\n"
if(strcmp(book[i].bookname,bookname)==0)
你所要修改的书的资料如下,请选择你要修改的内容\n"
〈%d〉书名:
〈%s〉作者:
〈%s〉\n"
book[i].booknum,book[i].bookname,book[i].bookcreat);
1:
修改书的序号\n"
2:
修改书名\n"
3:
修改作者\n"
请输入1-3:
"
switch(choice)
case'
1'
:
请输入新的序号\n"
%d"
book[i].booknum);
}break;
2'
请输入新的书名\n"
book[i].bookname);
3'
请输入新的作者\n"
book[i].bookcreat);
defaut:
没有这样的操作"
break;
continue;
getchar();
4.设计体会
有了这次的课程设计,让我在课堂上学到的理论知识有了更进一步的深入,把理论运用到实际当中不是一件简单的事情,虽然我稍微感觉到难做了一些,程序也有些欠缺的地方,但是这次设计不仅让我学到了很多知识,而且还锻炼了自己的实际操作能力。
获益匪浅。
这次的努力没有白费。
编程中难免有些问题我还是解决不了的,但是幸运的事如今互联网很发达让我在其中找到了知识并且也学到了很多有用的知识。
发展如此之快的现代化社会,我们也应该加快我们的步伐跟着社会走,去学习很多我们还不掌握的知识,把它们转化成自己的东西,学会运用学到的知识,以实现科学的价值所在。
在做课程设计之前我们应该充分的考虑好实际中会遇到的种种麻烦,以及预期结果,做好课设的各种准备,比如可以先写好要编写的程序,考虑要用什么函数才能实现预期的结果,整体的结构模块,做编程一定要细心仔细,而且也要有足够的耐心。
这次的课程设计真是学到不少东西,让我理解了知识的重要性,多学理论知识,勤动手操作,利用我们周围有效的学习资源。
是自己做一个更完善的人。
5.参考文献
[1]王敬华,林萍,陈静.C语言程序设计教程[M].北京:
清华大学出版社,2005.10
[2]谭浩强.C程序设计语言[M].北京:
机械工业出版社,2003.4:
205-256
[3]李邦几胡金桂王