C语言课程设计学生宿舍管理系统教学教材

上传人:go****e 文档编号:137376097 上传时间:2020-07-07 格式:DOC 页数:44 大小:363.50KB
返回 下载 相关 举报
C语言课程设计学生宿舍管理系统教学教材_第1页
第1页 / 共44页
C语言课程设计学生宿舍管理系统教学教材_第2页
第2页 / 共44页
C语言课程设计学生宿舍管理系统教学教材_第3页
第3页 / 共44页
C语言课程设计学生宿舍管理系统教学教材_第4页
第4页 / 共44页
C语言课程设计学生宿舍管理系统教学教材_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《C语言课程设计学生宿舍管理系统教学教材》由会员分享,可在线阅读,更多相关《C语言课程设计学生宿舍管理系统教学教材(44页珍藏版)》请在金锄头文库上搜索。

1、C语言课程设计学生宿舍管理系统精品文档HUBEI UNIVERSITY OF AUTOMOTIVE TECHNOLOGYC语言实训报告班 级 : k1223-5 姓 名: 赵 荷 学 号: 20129230518 目 录1.课程实训目的22.需求分析22.1要求22.2任务描述22.3运行环境32.4开发工具33.总体设计33.1系统流设计33.2系统模块设计44.详细设计54.1数据结构设计54.2模块接口设计64.3 以下是几个主要模块的流程图:75.运行结果105.1主菜单界面:105.2信息录入界面:105.3信息浏览界面:115.4 信息查询界面:115.5信息修改界面:126.程序

2、调试与测试126.1程序调试与分析126.2程序测试结果127.问题与不足128.建议129.编程体会1210.程序源代码:1211.参考文献1312.用户使用手册131.课程实训目的1) 通过课程实训,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。2) 通过课程实训,进一步掌握C语言中重要的数据结构。掌握并熟练运用指针、链表、结构体、文件等数据结构。3) 通过课程实训,提高程序开发能力,能运用合理的控制流编写清晰高效的程序。4) 通过课程实训,培养C语言知识运用和自学能力,真正的把课堂上获得的知识运用起来,培养自己对程序编写的兴趣,并能独立设计和实现一个小型系

3、统。5) 通过课程实训,加强了自己的程序分析能力。2.需求分析2.1要求1) 遵循软件开发过程的基本规范;能灵活应用,初步具备运用C程序解决实际问题的能力。2) 运用结构化程序设计方法,按照课程实训题目要求,完成包括需求分析、数据结构设计、概要设计、详细设计、编写代码、调试和测试C程序等过程。3) 学会利用数组、结构体、链表进行相关信息表示。4) 功能模块划分清晰,系统结构图符合功能操作要求,且有详尽的功能描述5) 各主要功能模块有详尽的流程图及描述,用函数的形式实现,且调用入口、功能、出口等关系正确。6) 所设计的C程序较好的可读性和可靠性;程序书写风格规范,注释清晰。7) 界面友好(良好的

4、人机互交),凡需要输入信息时,都有较详尽的提示信息,并对输入信息有较完善的值域分析。8) 程序经上机调试通过,不应出现语法型、功能型错误,并获得满意的结果。9) 学会通过各功能性测试用例测试程序的能力,尽可能避免原则性错误的出现。10) 掌握编写、调试和测试C语言程序的基本技巧,充分理解结构化程序设计的基本方法。11) C语言课程实训报告的内容反应实际设计过程,且符合格式要求,无抄袭现象。2.2任务描述此系统以计算机系的学生为背景,提供对学生个人住宿信息的录入、编辑、查找、统计等功能。具体功能实现如下:1) 信息录入:实现学生住宿信息的录入功能,并能将其以文件形式加以保存。2) 编辑功能:实现

5、对学生住宿信息的添加,并对指定学生的住宿信息进行删除或修改等功能。3) 信息浏览功能:实现对指定学生的学生住宿信息浏览。4) 查询功能:实现按学生入住时间、按收费标准查询学生住宿信息的功能。5) 系统以菜单方式工作,界面清晰,易于操作。2.3运行环境1) WindowsXP/7系统2) VC+6.0编译环境2.4开发工具C语言3.总体设计3.1系统流程设计本系统的功能模块如图1所示,主要有以下模块:课程名称界面程序欢迎界面学生信息录入学生信息整体浏览学生信息查询学生信息修改学生信息删除退出系统按入住时间查询按收费标准查询主菜单界面图1系统功能模块图3.2系统模块设计1) 课程名称界面:运用pr

6、intf函数,实现课程实训名称以及作者的显示。2) 系统欢迎界面:运用printf函数,实现欢迎使用学生简历管理系统的显示。3) 主菜单界面:构造函数menu_select();,实现系统主菜单的显示。4) 学生住宿信息录入:构造函数void create(),实现学生简历信息的录入。5) 学生住宿信息浏览:构造函数void xianshi();,实现对学生整体住宿情况的浏览。6) 学生住宿信息保存: 构造函数void baocun();,实现对学生整体住宿情况的保存。7) 学生住宿信息查询: int findByIndex(int index)函数,实现按入住时间查询, 调用int find

7、Bybiaozhun(int biaozhun);函数,实现按收费标准查询。8) 学生住宿信息修改:构造函数int replace(char name,int p,int q);,实现对指定学生的学号对其入住时间、收费标准。9) 学生住宿信息删除:构造函数int findBybiaozhun(int biaozhun);,实现对学生整体住宿情况的删除。4.详细设计4.1数据结构设计根据系统要求,系统中需要保存的数据信息,其结构如下:数据项名称数据项系统表示数据类型数据长度(字节)备注学生姓名stui.name字符串50学生住宿层号stui.cenghao整型4学生住宿房号stui.fangha

8、o整型4学生住宿床位号stui.chuanghao整型4学生学号stui.xuehao整型4住宿收费标准stui.shoefei整型4缴费状态stui.zhuangtai字符串20学生入住时间stui.shijian整型4根据系统要求,系统中需要保存的类别信息,其结构如下:类别代号文本文档类别名称a.txt先声明一个类型为typedef struct student的结构体,其成员为学生的住宿信息。然后通过对结构体成员、文件等数据结构的操作,实现对学生住宿信息的录入,浏览,查询,存盘,修改,删除等一系列操作。其中,结构体定义如下:typedef struct student char name

9、50;int cenghao;int fanghao;int chuanghao;int xuehao;int shoufei;char zhuangtai20;int shijian;STUDENT; 4.2模块接口设计1) 所有函数模块声明如下:menu_select();/*主菜单函数*/void create();/*录入学生简历信息*/void xianshi();/*显示浏览界面*/int findByIndex(int index);*实现按学号查询*/int findBybiaozhun(int biaozhun);/*实现按入住时间查询*/void baocun();/*向磁

10、盘写入学生信息加以保存*/int removebyxuehao(int sxh);/*实现指定学生的信息删除*/int replace(char name,int p,int q); /*实现学生信息的修改*/2) 并定义需要使用的全局变量:3) #define NUM 30 int flag=0;STUDENTstuNUMchar name20;int i,n,m,b,c,d,e,f,j,g,p,q,y,x,a1,a2;char A612;4) 主要模块的实现系统以主函数int main()为入口,首先通过system(color 1e);将汉字界面置为黄色。然后调用menu_select(

11、);函数,进入主菜单界面。系统接收用户输入的选择,调用相应的函数,进入到下一级菜单进行相关工作。4.3 以下是几个主要模块的流程图:1) 主菜单函数:否打印主菜单接收用户选项是否合法调用对应选项函数进入下一级菜单退出系统是否是是否为0 2) 信息浏览函数:图3 信息浏览流程图需要修改的学生学号是否存在修改界面是选择修改内容实现修改回主菜单打印信息浏览子菜单接收用户选项是否合法是否为0否是是否是否为1整体情况浏览按姓名浏览是否回主菜单3) 信息修改函数:否图4 信息修改流程图5.运行结果5.1主菜单界面:图5主菜单界面输入功能选择,系统自动进入相应功能界面。图6 信息录入界面5.2息浏览界面:

12、图7 全部信息浏览 5.3信息查询界面: 从键盘中输入选择,可以按学号和姓名进行查询,并显示结果。 图8 按姓名查询的结果5.4修改界面:从键盘中输入需要修改的信息代码,自动提示输入新的信息。图9 按姓名查询的结果6.程序调试与测试6.1程序调试与分析(1) 各模块分别调试过程、出现的错误原因,纠正错误的方法及结果: 主菜单显示界面:刚开始主菜单显示的时候参差不齐,视觉效果混乱。 通过插入“n,t,空格等来使主菜单显示清爽,合理。宿舍整体情况浏览:开始试图用“空闲,居住”来表示某房间的空闲状态。但由于能力有限,无法用汉字表示,就分别用了“T” 和“F”表示某房间的空闲状态。可以表示出每个房间的

13、空闲状态。按入住时间查询:最初对“for”循环的用法不熟悉,造成查询功能无法实现,通过上网查询相关资料解决了这一问题,使按入住时间查询这一功能实现。按入住时间查询:由于在输入入住时间时,限制了只能输入800/年或1200元/年,在测试查询功能时,老是出现程序错误,后来通过一步步的检查找出这一问题,按入住时间查询功能得以实现。修改功能:最初无用了“for”循环,造成数据无法修改。通过请教同学解决了这一问题。删除功能: 最初无用了“for”循环,造成数据无法删除。通过请教同学解决了这一问题。6.2程序测试及结果(1) 各模块测试用例数据的确定测试数据姓名层号房间号床位号学号收费标准缴费状态入住时间孙飞11111200是2011曹钰2222800否2012测试结果数据正确。(2) 测试中出现的问题的原因和分析在保存文件时,由于未及时关闭文件,造成下面的数据乱码,及时关闭文件的操作。7.问题与不足(1)需求分析中存在的问题和分析:因为不能很好的掌握主菜单的循环,无法实现再次录入学生信息。(2概要设计中存在的问题和分析 没能很好的结合实际情况

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 其它小学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号