c语言课程设计图书馆管理系统课程设计
- 格式:doc
- 大小:192.51 KB
- 文档页数:42
C语言程序设计 课 程 设 计 题 目 图书馆管理系统 系 (部) 信息工程系 班 级 姓 名 学 号 指导教师
2015年 月 日至 月 日 共 周
年 月 日 C语言程序设计 课程设计任务书 一、设计题目、内容及要求
题目:图书馆管理系统设计 内容:本题目适合于学校图书馆的资料管理和检索。要求程序实现分级管理,管理员可对图书和学生信息进行录入、查询、修改、输出、删除、插入、保存等操作。 要求:程序结构合理、算法准确、语法正确,并生成可执行文件。
二、要求的设计成果(课程设计说明书、设计实物、图纸等) 1. 课程设计说明书:课程设计说明书1份,不少于2000字。说明书中要包含需求分析、总体设计、详细设计以及主要的算法描述等内容。 2. 源代码:图书馆管理系统程序清单
三、进程安排 星期1(7.6):完成需求分析和程序总体设计。 星期2(7.7):完成数据录入、删除、修改、插入和浏览功能模块的设计。 星期3(7.8):完成密码设置和数据检索模块,程序调试无误,生成可执行文件。 星期4(7.9):撰写课程设计说明书初稿。 星期5(7.10):提交课程设计说明书、程序和数据。
四、主要参考资料 [1] 谭浩强,张基温.C语言程序设计教程(第3版)[M].北京:高等教育出版社,2006 [2] 吕凤煮.C语言基础教程——基础理论与案例[M].北京:清华大学出版社,2005 [3] 黄明、梁旭、万洪莉.C语言课程设计[M].北京:电子工业出版社,2006 [4] 郭宁,郑小玲.管理信息系统[M].北京:人民邮电出版社,2006 [5] 赵池龙,杨林,陈伟.实用软件工程[M].北京:电子工业出版社,2006 指导教师(签名): 教研室主任(签名): 课程设计成绩评定表 出勤 情况
出勤天数
缺勤天数
成 绩 评 定
出勤情况及设计过程表现(20分) 课设答辩(20分) 设计成果(60分) 总成绩(100分)
提问 (答辩) 问题 情况
综 合 评 定
指导教师签名: 年 月 日 1
引言 图书馆管理系统的需求分析主要确定系统的主要功能,对系统进行概要描述,对系统的各个主要功能分别进行需求描述,目的是使软件在设计过程中尽量符合客户的需要。 图书馆管理系统是一个对学生和图书信息进行录入、查询、修改、输出、删除、插入、保存等操作的管理应用软件,用户可以对文件中存储的学生和图书信息进行查找和浏览。该软件提供了一个简单的人机界面,管理员可以根据提示输入操作项并进行一系列对学生和图书的信息资料的管理操作 本系统主要应用结构化的设计思想实现学生和图书信息的增、删、改和查等典型管理功能。各主要模块的数据均存储在文件中,因此包含对文件的读、写等基本操作。在软件开发过程中应用了高级语言程序设计中的基本控制结构,如选择、循环、顺序结构。系统的设计方法是结构化设计方法,采用C语言进行开发。 2
2 总体设计 图书馆的信息管理和检索系统的需求分析主要确定系统的主要功能,对系统进行概要描述,对系统的各个主要功能分别进行需求描述,目的是使软件在设计过程中尽量符合客户的需要。
2.1 系统概述 将程序整体进行模块化处理,使程序编译思路更加清晰,降低了编译程序的难度。图书信息中包含学生姓名、性别、系别、班级、学号、借书时间、还书时间和图书的书名、作者、图书编号等基本信息,程序具有信息录入、删除、修改、浏览、检索和保存功能。
2.2 功能需求 该软件提供了一个对图书和学生信息进行管理和查看的平台,给用户提供了一个简单友好的用户接口,功能需求如下: 2.2.1密码系统
通过已定密码进入对应管理目录,从而进行相应的操作功能。 2.2.2信息录入
根据提示输入学生的姓名、性别、系别、班级、学号和图书书名、作者、图书编号等信息要素。 2.2.3信息查询
使用者可以根据系统提示按学生姓名、系别、班级、学号查询学生信息或
按图书书名、作者、图书编号查询图书信息。 2.2.4信息修改
使用者可以根据系统提示对系统中存在的学生的姓名、性别、系别、班级、学号、借书时间、还书时间和图书书名、作者、图书编号等信息进行修改。 2.2.5信息输出
可输出学生姓名,性别,系别,班级,学号和图书书名、作者、图书编号
等信息。 2.2.6信息删除
可以删除系统中存在的学生信息和图书信息,学生信息包括姓名、性别、系别、班级、学号等信息,图书信息包括图书书名、作者、图书编号等信息。 2.2.7信息插入
可插入系统所需的学生和图书信息。 3
2.2.8信息保存 可将输入的学生和图书信息保存在制定的文件夹。 2.2.9 退出系统
2.3 系统功能结构图
图1、系统功能结构图 学生信息录入 学生信息查询 学生信息修改 学生信息输出 删除学生信息 插入学生信息 保存学生信息
图书信息录入 图书信息查询 图书信息修改 图书信息输出 插入图书信息 保存图书信息
学生信息 图书信息 图书馆管理系统 4
3 详细设计 3.1主函数及主界面 在主函数中调用密码函数和zonghanshu两个函数,密码函数中运用do…while循环与if结构、字符串比较函数连用,达到验证密码的作用,又包含system(“cls”);进行清屏,在zonghanshu中通过switch…case 结构达到调用菜单目录的功能。 do { printf(" ***************************************************\n"); printf("\n"); printf(" ★★★★★★★★ 请 输 入 密 码 :★★★★★★★★\n"); printf("\n"); printf(" ***************************************************\n"); gets(s2); if(!strcmp(s1,s2)) a=1; else { a=0; } if(a==1) /*比较输入的密码str1和设定的密码str2, 输出"密码正确"。*/ printf("密码输入正确\n");
else if(a==0) printf("对不起密码输入错误,请从新输入\n"); }while(a==0); system("cls"); 5
3.2 zonghanshu流程图 图2、zonghanshu流程图 3.3添加模块 系统管理员通过此模块可以在原有记录的基础上随意的添加其他学生和图书信息,通过系统的提醒依次的录入所要记录的学生和图书的所有信息,可以添加多个信息,并且不需重新回到主界面,直接在系统的提示下进行再次输入。 do /*输入学生信息函数*/ { printf("请输入第%d个学生的信息:\n",i+1);
break; break; break; break; break; tssave(); break; fun8(); fun9(); tsxiugai(); tscharu(); pass();
输入i i break;
break; break; break; break; shanchu(); break; break; fun1(); fun2(); xiugai(); fun4();
charu(); save(); 6
printf("姓名:"); scanf("%s",&stu[i].name); printf("\n"); printf("性别:"); do { scanf("%s",&stu[i].sex);
if((strcmp(stu[i].sex,"man")!=0)&&(strcmp(stu[i].sex,"woman")!=0)) printf("您的输入不合法,请输入man或woman");
}while((strcmp(stu[i].sex,"man")!=0)&&(strcmp(stu[i].sex,"woman")!=0)); printf("\n"); …… i++; printf("是否继续输入?(Y/N)");
3.4查询模块 亦称检索模块。如果信息太多查找起来很不方便,对此我们系统设计了查找模块,使用户可以很方便的找到自己需要的信息。本模块可通过输入学生或图书的一部分信息进行查找,之后系统会显示其所有的信息。输入信息不存在则显示请输入正确的内容。
int i; …… scanf("%d",&i); switch(i) { case 1: xingming();break; case 2:xuehao();break; case 3:jieshushijian();break; case 4:huanshushijian();break;