语c言课程设计宿舍管理系统大学毕设论文.docx

上传人:b****1 文档编号:63030 上传时间:2022-10-01 格式:DOCX 页数:44 大小:320.93KB
下载 相关 举报
语c言课程设计宿舍管理系统大学毕设论文.docx_第1页
第1页 / 共44页
语c言课程设计宿舍管理系统大学毕设论文.docx_第2页
第2页 / 共44页
语c言课程设计宿舍管理系统大学毕设论文.docx_第3页
第3页 / 共44页
语c言课程设计宿舍管理系统大学毕设论文.docx_第4页
第4页 / 共44页
语c言课程设计宿舍管理系统大学毕设论文.docx_第5页
第5页 / 共44页
点击查看更多>>
下载资源
资源描述

语c言课程设计宿舍管理系统大学毕设论文.docx

《语c言课程设计宿舍管理系统大学毕设论文.docx》由会员分享,可在线阅读,更多相关《语c言课程设计宿舍管理系统大学毕设论文.docx(44页珍藏版)》请在冰豆网上搜索。

语c言课程设计宿舍管理系统大学毕设论文.docx

语c言课程设计宿舍管理系统大学毕设论文

 

内蒙古科技大学

本科生课程设计说明书

 

题目:

C语言课程设计

——学生宿舍管理系统

学生姓名:

学号:

专业:

软件工程

班级:

2015-1

指导教师:

日期:

2016年1月5日

 

内蒙古科技大学课程设计任务书

课程名称

C语言课程设计

设计题目

学生宿舍管理系统

指导教师

时间

2015.12.15---2016.1.5

一、教学要求

1.巩固和加深学生对C语言课程的基本知识的理解和掌握

2.掌握C语言编程和程序调试的基本技能

3.利用C语言进行基本的软件设计

4.掌握书写程序设计说明文档的能力

5.提高运用C语言解决实际问题的能力

二、设计资料及参数

每个学生在教师提供的课程设计题目中任意选择一题,独立完成,题目选定后不可更换。

宿舍管理系统:

设有学生宿舍的数据,要求输入计算机并存放在内存中,然后增加3个宿舍的记录并可以输出材料清单,实现文件存盘和对所选择的记录进行删除,修改。

并统计宿舍的总人数,宿舍的基本信息包括楼号、房间号、所住学生班级、人数,要求设计菜单来调用其各功能模块:

v新建文件、打开文件

v输入记录、插入记录、修改记录

v查询记录、输出清单

v保存文件、退出

三、设计要求及成果

1.分析课程设计题目的功能需求(可选用数组或链表实现,可多人(最多3人)协作完成一个题目)

2.写出详细设计说明(至少包括功能实现分析和模块流程图)

3.编写程序代码,调试程序使其能正确运行(代码书写要规范,标示符要见名知意,要有必要的注释,每人至少500行代码,不包括注释和花括号)

4.设计完成的软件要便于操作和使用

5.设计完成后提交课程设计报告(请严格按照模板进行排版)

四、进度安排

第一天 选择课程设计题目,分析课题的要求

第二天 编程

第三天 编程及调试

第四天 写课程设计报告

第五天 提交课程设计报告(打印稿及电子稿)

五、评分标准

1.根据平时上机考勤、表现和进度,教师将每天点名和检查

2.根据课程设计完成情况,必须有可运行的软件。

3.根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格。

六、建议参考资料

1.《C语言程序设计》,谭浩强,清华大学出版社

2.《C语言程序设计课程设计》,刘振安,机械工业出版社

 

3.6统计模块设计................................................................................................19

第一章需求分析

1.1引言

学生宿舍管理系统对于一个学校来说是必不可少的组成部分。

目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。

而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。

当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。

信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。

21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。

针对如此,本人设计了一套学生宿舍管理系统。

1.2任务概述

熟悉宿舍的学生管理流程,进行需求分析第15周

总体设计,详细设计第16周

编写代码第17周

测试第18周

1.3数据描述

需录入学生的个人信息,数据流程图如下:

报表

structst_message/*学生信息*/

{charname[20];/*学生姓名*/

charnum[20];/*学号*/

charsex[5];/*性别*/

charage[4];/*年龄*/

charmajor[20];/*专业*/

charclasss[8];/*班级*/

chardorm[7];/*宿舍号*/

}st[N],t;

1.4功能需求

输入学生信息

输入学生在校信息,包括学号,姓名,宿舍号,性别,班级,专业等

修改学生信息

修改指定的学生信息

删除学生信息

删除指定学生信息

添加学生信息

新进一个学生,录入他的信息在数据库中

查找学生信息

按学生信息进行查找

统计学生信息

按学生情况进行统计显示

保存学生信息

学生信息自动保存在申请的文件中

1.5性能需求

(1)此管理系统:

功能全面,操作简单,检索迅速,查询方便,存储量大,成本低等优势。

(2)可以大大节约工作时间,减少工作量,提高工作效率,方便管理学生。

1.6任务计划

(1)构思与设计15周

(2)编写代码16-17周

(3)检查与测试18周

 

第二章概要设计

2.1

总体设计

 

 

2.2数据类型设计(或数据结构设计)

学生信息用了一个结构体,包含学生的基本信息

structst_message/*学生信息*/

{

charname[20];/*学生姓名*/

chardorm[7];/*宿舍号*/

charnum[20];/*学号*/

charsex[7];/*性别*/

charage[5];/*年龄*/

charmajor[20];/*专业*/

charclasss[10];/*班级*/

}st[N],t;

 

2.3接口设计

函数名

函数格式

函数功能

input_message

voidinput_message()

对住宿学生信息进行录入

append_message

voidappend_message()

对新来学生信息进行添加录入

revise_message

revise_message()

对需修改学生的信息进行修

delete_message()

delete_message()

对某一学生信息进行删除操

find_message

find_message()

分别以姓名、学号、宿舍号对学生信息进行查询

census_message

census_message()

分别以学号、宿舍号、性别、班级、专业方式对学生信息进行统计,并按学号由小到大输出。

表2.1:

函数列表

 

2.4运行界面设计

 

如下图2.4:

图2.4运行界面

 

第三章详细设计

3.1输入模块设计

voidinput_message()/*输入模块*/

{inti;

charchoice;

FILE*fp;

fp=fopen("student.txt","at+");

if(fp==NULL)

{printf("\n\n*****库存文件不存在!

请建立。

按任意键退出!

");

getchar();

exit

(1);

}

for(i=0;;i++)

{system("cls");

getchar();

printf("请输入学生姓名:

");

gets(st[i].name);

printf("\n请输入学生班级:

");

gets(st[i].classs);

printf("\n请输入学生宿舍号:

");

gets(st[i].dorm);

printf("\n请输入学生学号:

");

gets(st[i].num);

printf("\n请输入学生性别:

");

gets(st[i].sex);

printf("\n请输入学生年龄:

");

gets(st[i].age);

printf("\n请输入学生专业:

");

gets(st[i].major);

fwrite(&st[i],sizeof(structst_message),1,fp);

printf("输入成功!

\n是否继续录入(Y/N)?

");

choice=getchar();

if(choice=='y'||choice=='Y')

continue;

else

{fclose(fp);

break;

}

}

}

图3.1输入测试

3.2查找模块设计

find_message()/*查找信息模块*/

{inti,choice,flag,fno,fsize,fnum;

charf_name[20];

charf_num[10];

charf_dorm[7];

FILE*fp;

system("cls");

do

{sort_message();

fp=fopen("student.txt","rt");

if(fp==NULL)

{printf("\n\n*****库存文件不存在!

请先建立。

按任意键退出!

");

getchar();

exit

(1);

}

fno=fileno(fp);

fsize=filelength(fno);

fnum=fsize/sizeof(structst_message);

system("cls");

printf("请选择查询方式:

\n");

printf("1.按姓名查询\n");

printf("2.按学号查询\n");

printf("3.按宿舍号查询\n");

printf("4.返回主页\n");

scanf("%d",&choice);

图3.2查询测试

3.3排序模块设计

voidsort_message()/*排序模块*/

{inti,j,fno,fsize,fnum;

FILE*fp;

fp=fopen("student.txt","rt+");

if(fp==NULL)

{printf("\n\n*****文件打开错误。

按任意键退出!

");

getchar();

exit

(1);

}

fno=fileno(fp);

fsize=filelength(fno);

fnum=fsize/sizeof(structst_message);

for(i=0;i

fread(&st[i],sizeof(structst_message),1,fp);

for(i=0;i

for(j=i+1;j

if(strcmp(st[i].num,st[j].num)>0)

{t=st[i];

st[i]=st[j];

st[j]=t;

}

rewind(fp);

for(i=0;i

fwrite(&st[i],sizeof(structst_message),1,fp);

fclose(fp);

3.4删除模块

 

delete_message()/*删除模块*/

{inti,j,choice,fno,fsize,fnum;

chard_num[10];

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1