C语言课程设计学生成绩管理系统说明书1.doc
- 文档编号:230265
- 上传时间:2022-10-07
- 格式:DOC
- 页数:30
- 大小:88.50KB
C语言课程设计学生成绩管理系统说明书1.doc
《C语言课程设计学生成绩管理系统说明书1.doc》由会员分享,可在线阅读,更多相关《C语言课程设计学生成绩管理系统说明书1.doc(30页珍藏版)》请在冰豆网上搜索。
*******************
实践教学
*******************
兰州理工大学
计算机与通信学院
2009年春季学期
计算机语言B课程设计
题目:
学生成绩管理系统
专业班级:
姓名:
学号:
指导教师:
成绩:
2
目录
摘要 1
前言 2
正文 3
1. 问题描述 3
2. 需求分析 3
3. 系统总体设计 3
4. 详细设计 4
5. 系统测试 6
6. 软件使用说明书 7
总结 9
参考文献 10
致谢 11
附件Ⅰ部分原程序代码 12
摘要
建立一个“学生成绩管理系统”,系统以菜单方式工作,编写存放有学生信息,包含学生姓名、学号、学生的成绩、班级等,并可对这些信息进行浏览;可按学号查找此信息,建立学生成绩信息的文件,并且可以实现一个新的学生信息的插入,可以按照学号来删除一个学生的信息,可以按照平均分对学生进行排序。
关键词:
学生成绩管理;文件;插入学生成绩信息;查询;修改;对学生的平均成绩进行排序。
28
前言
近年来,随着学校规模的不断扩大,学生数量也相应的增加,有关学生考试的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致学生成绩管理上的混乱,人力与物力过多浪费,学生成绩管理费用的增加,从而使学校的负担过重,影响整个学校的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的学生成绩管理系统,对学生成绩进行集中统一的管理。
系统开发的总的设计目标是学生成绩管理的系统化、规范化和自动化,实现对学生成绩的集中统一的管理。
正文
1.问题描述
由于学生人数的增加,使得学生成绩管理工作繁重,而且手工管理效率极低,急需一个软件系统解决这些问题。
为了跟上时代潮流,规范管理,提高学生成绩的管理水平和管理效率,为全校职工和学生提供方便、快捷、准确的学生成绩服务,开发一个学生成绩管理系统”。
;
2.需求分析
本系统通过管学生成绩信息,可以进行学生成成绩信息的插入,修改,对学生的平均分进行排序,为学生成绩供准确的资料,提高了人员的工作效率。
3.系统总体设计
1:
整体结构流程图主菜单
输入记录
排序
显示
保存
读取
删除
退出
查询
按姓名
按平均成绩
按学号
插入
按平均成绩高低
3、添加学生成绩信息流程图
开始
结束
选择操作
输入数据
显示数据
查询
删除
输出界面
退出系统
按学号
按姓名
统计成绩
按景平均成绩
选7
选6
选5
选4择4
选3
选2
选1
选8
读取数据吧
选0
三门成绩
学号
姓名
插入数据
排序
按平均成绩高低i
2:
系统的执行应从功能菜单的选择开始,依据用户的选择来进行后续处理直到
用户选择退出系统为止。
其间应对用户的选择做出判断和异常处理。
4.详细设计
对应于总体设计时的系统功能模块图,各个功能模块的处理逻辑如下:
信息输入模块:
打开学生信息文件;
while( 继续输入)
{
读入学生成绩信息;
将读入信息添加到学生信息文件中;
提示是否继续输入;
}
关闭学生成绩信息文件;
信息浏览模块:
打开学生信息文件;
while(不到文件结束)
{
从文件中顺序读出一个学生的信息;
按指定格式输出该学生成绩的信息;
}
关闭学生成绩信息文件;
信息查询模块:
while(仍继续查询)
{
if(按书名查询)
{
读入查询的学生的条件;
打开图书信息文件;
while(不到文件结束)
{
顺序读出一个学生成绩的信息;
if(该学生成绩信息符合条件)输出该学生成绩的信息;
}
关闭学生成绩信息文件;
提示共有几条符合条件的记录;
}
else
if(按学号查询)
{
读入学生成绩的条件;
打开学生成绩信息文件;
while(不到文件结束)
{
顺序读出一个学生成绩的信息;
if(该学生成绩信息的学历符合条件)输出该学生成绩的信息;
}
关闭图书信息文件;
提示符合条件的记录数;
}
else提示输入不合适;
提示是否继续查询;
}
5.系统测试
用以下的例子做测试,选择输入操作,依次输入,学号,姓名,C语言成绩,英语成绩。
数学成绩。
返回则选择浏览、查询、修改、删除,排序等功能。
学号
姓名
C语言
英语
数学
平均分
001
小明
87
89
88
88.0
002
小雨
78
79
80
79.0
003
张启
66
67
68
67.0
004
周琦
60
61
68
63.0
6.软件使用说明书
(1)根据正确的提示安装软件。
(2)Intel486以上系列、AMDK6以上系列等PC台式机和便携式电脑都可运行。
(3)打开该程序系统,浏览菜单,根据需要选择功能,进行各项操作。
操作如下:
点击开始菜单,进入菜单选择。
输入:
将所需的信息输入。
输出:
学号,姓名,成绩,排名,。
输入:
根据不同的需要选择,当信息输入显示出错误时,进入浏览信息,找出错误。
当错误不能改正,则退出浏览信息。
进入查询信息:
则屏幕会出现两个对话框——按作学号和按姓名查找,查处相应的所需信息和书的状态(是否借出)。
当查询不能显示需要时进入修改程序,把所输入的信息进行修改,使之正确能够正常运行或进入删除信息中,重新输入自己所要的信息。
当信息输入正确,进入你所需要的菜单程序中:
学生信息:
显示学生的成绩,学号,姓名,班级,排名等
总结
该系统以学生成绩信息管理为背景,并且有一定的可行性和安全性,确保了各项指定功能得以运行。
本系统以基本函数、结构体、枚举性、文件以及链表等多方位知识贯穿实现。
通过此次程序设计实践,是同学们对所学知识的综合运用,也是程序设计得以提高的表现。
通过此次编程培养了我们结构化程序设计的思想,加深了对高级语言基本语言要素和控制结构的理解,锻炼我们独立思考制作程序的能力,并且掌握了一些课程设计的相关知识与实践操作能力,为以后的学习提供了锻炼的机会。
经过设计和开发,学生成绩管理系统基本开发完毕以及各类相关报表的打印。
并提供部分系统维护功能,使用户方便进行数据备份和恢复、数据删除。
对于数据的一致性的问题也通过程序进行了有效的解决。
从而是我对c语言这门课程有了更好的了解。
但是由于设计时间较短,所以该系统还有许多不尽如人意的地方,比如联机文档比较少,用户界面不够美观,出错处理不够等多方面问题。
这些都有待进一步改善。
参考文献
[1]c++程序设计教程,王连相,中国铁道出版社,2007
[2]C语言程序设计,谭浩强,清华大学出版社,1999
[3]C程序设计题解与上机指导,谭浩强,清华大学出版社,1999
[4]C语言的实际应用,安徽科学技术出版社,2000
[5]C语言函数手册,机械工业出版社,1999
[6]C语言实用程序荟萃,西安电子科技大学出版社,1993
致谢
在编写程序的过程中,我们得到了周小健、丁政建老师的精心指导以及孜孜不倦的教诲,在老师的指导下,我们的能力得到了提高,同时养成了科学、严谨的作风和习惯,在此,我们对老师的精心栽培表示衷心的感谢!
感谢我们小组同学对我的帮助和指点,尤其感谢我的舍友在非常时期,在生活和学习上帮我许多忙。
在课设即将完成之际,我的心情无法平静,从开始进入课题到课设的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意。
附件Ⅰ部分原程序代码
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
intshoudsave=0;//
structstudent
{
charnum[10];//学号
charname[20];
charsex[4];
intcgrade;
intmgrade;
integrade;
inttotle;
intave;
charneartime[10];//最近更新时间
};
typedefstructnode
{
structstudentdata;
structnode*next;
}Node,*Link;
voidmenu()
{
printf("********************************************************************************");
printf("\t1输入学生资料\t\t\t\t\t2删除学生资料\n");
printf("\t3查询学生资料\t\t\t\t\t4修改学生资料\n");
printf("\t5显示学生资料\t\t\t\t\t6统计学生成绩\n");
printf("\t7排序学生成绩\t\t\t\t\t8保存学生资料\n");
printf("\t9获取帮助信息\t\t\t\t\t0退出系统\n");
printf("********************************************************************************\n");
}
voidprintstart()
{
printf("-----------------------------------------------------------------------\n");
}
voidWrong()
{
printf("\n=====>提示:
输入错误!
\n");
}
voidNofind()
{
printf("\n=====>提示:
没有找到该学生!
\n");
}
voidprintc()//本函数用于输出中文
{
printf("学号\t姓名性别英语成绩数学成绩C语言成绩总分平均分\n");
}
voidprinte(Node*p)//本函数用于输出英文
{
printf("%-12s%s\t%s\t%d\t%d\t%d\t%d\t%d\n",p->data.num,p->data.name,p->data.sex,p->data.egrade,p->data.mgrade,p->data.cgrade,p->data.totle,p->data.ave);
}
Node*Locate(Linkl,charfindmess[],charnameornum[])//该函数用于定位连表中符合要求的接点,并返回该指针
{
Node*r;
if(strcmp(nameornum,"num")==0)//按学号查询
{
r=l->next;
while(r!
=NULL)
{
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 学生 成绩管理系统 说明书