课 程 设 计 报 告
课程名称 C语言程序设计
课题名称 学生宿舍管理系统
专 业 班 级 学 号 姓 名 指导教师
2012年6月19日
湖南工程学院 课 程 设 计 任 务 书
课程名称 C语言程序设计 课 题 学生宿舍管理系统 专业班级 学生姓名 学 号 指导老师
审 批
任务书下达日期 2012 年 6 月 19 任务完成日期 2012 年 7 月 4 日
日
一、设计内容与设计要求
1.
设计内容:学生宿舍管理系统设计
涉及的知识点:
①掌握并熟练运用C语言的基本数据类型与各种表达式,程序的流程控制语句;
②掌握数组的基本概念。熟练掌握一维数组、二维数组的应用、掌握字符数组
与字符串的关系以及字符串的简单处理。
③掌握函数的定义,函数的返回值,函数的调用,函数的形式参数和实际参数之间的关系;掌握变量的作用域与生存期,了解函数的作用域。 ④掌握结构体的概念,结构体类型的定义,结构体变量的定义和初始化,结构体成员的表示,结构体变量的赋值含义,结构体与指针、函数的关系。
⑤掌握文件、文件类型指针的基本概念,熟练掌握文件的打开与关闭以及文件的建立、读写等有关操作。
2. 设计要求:
1) 用C语言实现系统;利用结构体数组实现学生宿舍信息的数据结构设
计;系统的各个功能模块要求用函数的形式实现;应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观;各项显示数据均要求以表格的形式输出;在各功能子模块中应设计相应的二级菜单。
2) 建立一个学生宿舍信息数据库,文件名为ssxxk.txt,并从该文件中读取
数据;
3) 学生宿舍管理系统应能提供以下功能:
①系统以菜单方式工作:通过提示用户输入一个数字选项,调用相应的功能函数。
②显示功能:完成全部宿舍信息的显示,显示时按表格的形式,且应有表头;
③追加功能:完成一个(或多个)学生入住宿舍的登记(追加记录),要求在追加过程中有相应的提示信息,完成追加后能重新显示; ④查询功能:要求可选择按指定学号和指定姓名两种方式定位查询,查询的结果要求以表格的形式显示,若查询不到应给出相应的提示信息。 ⑤删除功能:要求可按指定的学号和指定的姓名两种定位方式删除学生在宿舍的记录。
⑥修改功能:要求能按学号或按姓名两种定位方式,且可以按用户要求修改记录中除学号和姓名以外的指定内容,并重新显示。 ⑦)统计模块:能按指定的校区、宿舍栋号、统计入住该栋的学生人数,或统计指定的班级入住某栋的人数,并将统计的结果以及被统计的人员的信息用表格的形式显示; ⑧排序功能:按宿舍类别排序(升序)
⑨要求在删除模块、修改模块和查询模块中若找不到所需的记录时,系统设计中应有一定的提示信息。
4) 说明:
(1) 要求将修改后的数据写入到一个新的数据文件nwesxxk.txt中。 (2) 对系统有兴趣的同学可以在实现基本要求的基础上,完善系统的其它
功能。
5) 学生宿舍管理系统采用一个结构体数组,宿舍生信息数据库结构如下:
char ssdh[4]; /*宿舍栋号*/
int fjh; /*房间号*/ long xh /*学号*/ char name[10]; /*姓名*/ char xb[4]; /*性别*/ char bj[12]; /*班级*/ char phone[12]; /*电话号码*/ int xq; /*校区*/ int sslb; /*宿舍类别*/
注意:学号不能重复且不少于4位数字,各项字符串的长度要求在4~10之间,数据库应有10条或多于10条以上的记录。 6) 要求:
⑴ 要求每个学生必须独立思考,认真并按时完成本课程设计所包含的所有内容;
⑵ 要求学生必须按照课程设计报告的完整格式说明设计内容,设计任务分析过程和算法,给出程序流程图和全部源程序; ⑶ 设计报告的完整格式应包括以下部分的内容:
① 系统设计总体思路; ② 系统的主要功能;
③ 系统功能模块的划分(要求画出总体模块框图);
④ 主要功能的实现和各个程序模块说明(每个功能模块的框图、系
统主模块的流程图,各个功能模块至少要有一个主要的流程图); ⑤ 程序调试过程及各模块调试中相应的部分截图; ⑥ 课程设计总结与体会(不少于500字)。 ⑦ 课程设计参考文献; ⑧ 程序清单;
⑷ 课程设计周内,凡规定的集中上机时间必须到机房调试程序;