学生宿舍管理系统C语言编程

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

“学生宿舍管理系统”

C语言课程设计报告

一、程序功能简介

我设计的是“学生宿舍管理系统”,主要是针对住宿学生个人信息的管理,适用对象主要是学校,以方便学校对住宿学生的管理。包括学生的、学号、性别、专业、班级等等。在编写过程中主要运用C语言的基本知识有:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的调用与使用)等。

二、课程设计要求

该程序是由C语言编写的一个学生宿舍管理查询软件,程序在Microsoft Visual C++ 6.0下运行,其主要功能是实现对学生信息的录入、添加、删除、修改、查询、统计。其中查询可以分别以、学号、宿舍号为关键字查询学生信息。统计可以分别以学号、宿舍号、性别、班级、专业为关键字进行统计,并且输出信息按学号大小从小到大输出。

三、源程序分析

1)结构分析

1.方案设计

2.数据结构说明

程序中数据主要是学生信息,具体属于类型如下:

struct st_message

char name[20]; /*学生*/

char dorm[7]; /*宿舍号*/

char num[10]; /*学号*/

char sex[5]; /*性别*/

char age[4]; /*年龄*/

char major[20]; /*专业*/

char classs[8]; /*班级*/

3.模块功能说明

第一录入模块:调用input_message(),对住宿学生信息进行录入。

第二添加模块:调用append_message(),对新来学生信息进行添加录入。

第三修改模块:调用revise_message(),对需修改学生的信息进行修改。

第四删除模块:调用delete_message(),对某一学生信息进行删除操作。

第五查询模块:调用find_message(),分别以、学号、宿舍号对学生信息进行查询。

第六统计模块:调用census_message(),分别以学号、宿舍号、性别、班级、专业方式对学生信息进行统计,并按学号由小到大输出。

四、编程中遇到的问题及解决方法

在调试过程中,时常会出现输入或显示为乱码的情况,这可能是上下定义的数据类型不同或定义数组长度不够所导致的。有时候程序中还会出现录入五个数据而只显示四个的情况,这也经常是因为定义的结构体数组长度过低所造成的。像这些问题只要把数据类型都定义成字符型,并且定义一个合理的数组长度一般都能解决。

在调试过程中我遇到最大的问题出现在删除模块。在运用“rt+”打开文件并对某一数据进行删除后,往往显示会多显示一行数据。这是由于“rt+”写数据时只会覆盖数据而不会清除原文件数据,因此文件最后一行数据总会保留在原文件中。后来我先用“rt”打开文件并读取文件中的数据,然后再用“wt”打开原文件将删除后的数据重新写入文件,最终成功运行。

五、程序运行截屏与结果分析

1.测试数据

对功能1(录入学生信息)的测试:按照先后顺序分别输入学生信息:

学号班级宿舍号性别年龄专业

05111101 三 051111 429 女 18 土木工程

04111102 四 041111 218 男 18 信息工程

对功能2(添加学生信息)的测试:按照先后顺序分别输入学生信息:

学号班级宿舍号性别年龄专业

02111101 红 021111 429 女 18 机械系

03111203 娜 031112 101 女 18 能源与环境

对功能3(修改学生信息)的测试:输入要修改学生的:林丹,系统显示“该学生信息不存在”。输入修改学生:三,系统显示出该学生信息。选择修改学号为:05111118,系统显示出修改后的学生信息。

对功能4(删除学生信息)的测试:输入要删除学生的学号:03111210,系统显示“该学生信息不存在”。输入要删除的学生的学号:03111203,系统显示出该学生信息。选择删除该学生信息。

对功能5(查询学生信息)的测试:查询宿舍号为429的信息,系统显示为:

学号班级宿舍号性别年龄专业

02111101 红 021111 429 女 18 机械系

05111101 三 051111 429 女 18 土木工程

对功能6(统计学生信息)的测试:选择按学号统计,系统显示为:

学号班级宿舍号性别年龄专业

02111101 红 021111 429 女 18 机械系

04111102 四 041111 218 男 18 信息工程

05111101 三 051111 429 女 18 土木工程

学生总人数3人,其中男生1人,女生2人。

对功能7(退出系统)的测试:选择退出系统,程序关闭。

2.详细设计及运行结果

1)函数调用关系图

2)部分模块流程图及运行结果截屏

主页界面

主页流程图

开始

功能选择

选1

选4

选3

选2

录入模块

添加模块

修改模块

删除模块

录入界面

录入界面修改模块

输入姓名

输入班级

输入宿舍

输入学号

输入性别

输入年龄

输入专业

是否继

续录入

结束

N Y

相关文档
最新文档