成绩管理系统.docx

上传人:b****5 文档编号:5665721 上传时间:2022-12-31 格式:DOCX 页数:15 大小:348.09KB
下载 相关 举报
成绩管理系统.docx_第1页
第1页 / 共15页
成绩管理系统.docx_第2页
第2页 / 共15页
成绩管理系统.docx_第3页
第3页 / 共15页
成绩管理系统.docx_第4页
第4页 / 共15页
成绩管理系统.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

成绩管理系统.docx

《成绩管理系统.docx》由会员分享,可在线阅读,更多相关《成绩管理系统.docx(15页珍藏版)》请在冰豆网上搜索。

成绩管理系统.docx

成绩管理系统

不需要目录

第一章引言

应用背景课程设计目的用户特点

需求分析安全性分析系统配置

开发意图

第二章制作过程

主要内容

准备工作

制作简单的窗体应用程序制作程序运行窗口

第三章课程设计内容及简介

设计说明

程序流图

部分程序及其说明

第四章程序运行结果

第五章结束语

参考文献

附程序

成绩管理系统

文档的写作框架不符合软件工程的规范,仅仅是C++勺课

程设计

摘要学生成绩管理系统是一个非常通用的信息管理系统,本课题主要设计一个简单的成绩管理系统,进行简单的成绩查询及管理。

主要实现的功能有:

学生基本信息的导

入/导出;学生成绩信息的录入、修改、添加、删除、查询、打印;增加参数设置,能增加班级,增减科目;系统用户管理等。

在课程设计中,系统开发平台为WindowsXP,

程序设计语言采用VC++,数据库采用MicrosoftOfficeAccess2003,程序运行平台为

Windows98/2000/XP。

系统的实现可以极大地方便教师和学生对成绩的使用,查询和管理。

关键词程序设计;成绩管理;数据库;VC++

1引

信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生

活的各个领域。

计算机与人类的关系愈来愈密切。

为了提高学校对学生的管理效率,成绩管理系统越来越受到人们的亲睐。

本课程设计主要用于一个学校中学生成绩的管理;包括学生基本信息的导入/导出;

学生成绩信息的录入、修改、添加、删除、查询;增加参数设置,增加班级,增减科目以及系统用户的管理等。

通过该程序能够简单明了的实现以上功能,极大地方便老师和学生的管理和查询。

之所以选择VisualC++乍为开发工具,不仅仅因为曾经有过使用它的经验,看中的

更是它的功能强大和使用方便。

它本身不仅具有极其强大的编程能力,它允许选择和管理外接程序,这些对VisualC++的扩充又进一步增强了它的开发环境的能力。

数据库选择MicrosoftOfficeAccess2003,不仅因为Access2003为我们提供了一组功

能强大的工具,这些工具提供的功能相当完善,能够满足专业开发人员的需要;更重要的是对于我们这种新用户来说,操乍方便简单,运行快速安全,十分容易上手,很适合新手使用。

应用背景

学生成绩管理系统是学校日常信息管理的一个重要内容。

随着学校考试次数越来越多,学生成绩管理的工乍量也变得越来越大。

如果能对学生成绩做系统的管理,就能更好更方便地快速查询或者修改学生的考试成绩,省去了文件管理的繁琐与麻烦,无疑将给学校的管理部门带来很大的方便。

学生成绩管理系统就是把学生的考试成绩实行统一、集中、规范的收集管理,建立现代化、专业化的管理系统。

学生成绩管理系统的对象是在校学生,成绩管理系统为学生提供了成绩查询等服

务;为学校及老师提供了添加、修改、删除学生成绩等服务。

本系统基本上能够满足当今学校学生学习成绩信息管理的需求。

学生个人成绩信息录入项目齐全、完整、系统。

本成绩管理系统简单明了,可以很方便查询、阅读、修改及重复使用。

课程设计目的

本课程设计为学生提供了一个既动手又动脑,自学,查资料,独立实践的机会,也为将来设计程序积累一定的宝贵经验。

本课程设计让我们将本学期课本上的理论知识和实际有机的结合起来,锻炼实际分析问题和解决问题的能力。

用户特点

系统的主要用户为该校的教师,他们的计算机水平并不高,所以对计算机的人性化和易用性比较高,最好做到看界面按钮就知道其功能,使用该系统就应该使所有的教师感觉到工作量减少、工作有秩序、工作效率有明显的提高。

系统正常运行后预期的使用频度比较高,除平时教师使用量比较大外,在考试后将会有非常大的访问量。

需求分析

本系统设计者力求根据学生成绩管理的需要,而建立一个“学生成绩管理系统”以方便对成绩的各项管理操作。

开发目的如:

①能对成绩进行录入和修改;②能添加该学生的记录;③能删除该学生的记录;④能添加班级的信息;⑤能修改班级的信息;⑥能删除班级的信息。

安全性分析

1)只有管理员才能输入、修改和删除有关的数据。

2)学生只可以查看自己的成绩。

3)严格控制对数据的修改,只能数据录入的用户才有权对数据进行修改。

系统配置

1)软件配置

操作系统:

Windows2000中文版或更高;

数据库选择:

MicrosoftAccess

开发平台:

VisualC++

(2)硬件配置

CPU

内存:

PentiumII266或更高;

64MB或以上;

显示器:

VGA或更高;

2制作过程

主要内容

在成绩管理系统中显示学生成绩的查询结果。

准备工作

用MicrosoftOfficeAccess2003制作一个简单的数据库,如图2-1

图2-1数据库制作

图重新截取,只要有用信息,没有用的空白去掉

选择新建空白数据库。

按照以上过程做出几个课程设计所需要的数据库。

(8)最后保存所做出的数据库。

数据信息见图2-2

■—ftSTDDENT:

 

记录;回

在微机中的控制面板中创建数据源名称(DNS)。

写出过程

制作简单的窗体运用程序

(1)运行VC+■程序;

(2)新建MFCAppWizard(EXE工程,输入工程名(本程序中工程名为Ihwy),

 

IFC应用程序向导-抄SI

 

中丈[中国][A卩PWZCHS.DLL)

U上一步I下一步》I

图2-3aMFC应用程序向导—步骤1对话框

(3)在创建应用程序类型中选择“单文档[S]”,单击“下一步”。

(4)你将看到一个如图2—3b所示的“MFC应用程序向导一步骤2”的对话框,

选择“查看数据库不使用文件支持”选项,点击“数据源”,选择“OLEDB,单击数据

链接属性,选择MicrosoftJetOLEDBProvide,单击下一步,把以前做的那个数据库目录浏览到数据库名称里,测试链接,显示成功后单击“确定”,选择Ihwy。

(5)连续点击“下一步”,到“MFC应用程序向导-步骤4”,把勾全部取消,然

后单击“下一步”

(6)看到“MFC应用程序向导—步骤6”后,验证一下在基类中是否选择了“C

OleDBRecordVieW。

Mfx

(7)单击“完成”,简单的窗体应用程序创建完毕。

IFC亶用程序向导-涉驟2并

Exit

r否

「标S文件

.....0.....■imB■■■•J■0:

:

:

J-III

庖看数据S不ft用文件支持『

■■■■■■■■■■■■H■■■■■■■■■■■■■■■■■■■■

「fitosfie用文件支#如果a要包含视就1^須》桂数《«・

数据

<上—步I下一步》I

2.4制作程序运行窗口

(1)在对话框中添加6个Button(按钮)控件,分别用做“显示”、“增加记录”、

(2)

“删除记录”、“修改记录”、“查询记录”和“全部记录”按钮。

添加一个静态文本控件用做“选择班级:

”;添加一个组合框控件用做多重选择。

添加3个列表控件用做学生、学号、科目、成绩及任课老师详细信息的显示。

如图2-4所示,成绩管理系统的一个窗体创建完成。

Colors

XredXgreen

ScyanXblue

Colofs

KJyell...

red

HgreenHvn蛊…

Kcyan

Nblue

1増加记录

SSyell...KflrfpnHma...KcyanIIblue

I奁寻记录

I导:

Hi己栄

图2-4成绩管理系统窗体

(5)依次完成课程其他显示窗体的创建。

3课程设计内容及简介

设计说明

A.定义多个函数以实现各个功能:

1)

主函数main():

定义学生结构体数组,调用录入、统计等函数对成绩表进行处

理;

B.定义一个结构体,其中的成员如表3-1:

表3-1班级成员

序号

成员名(字段名)

数据类型

长度

字段含义

1

class0

char

20

班级

2

num

int

学号

3

name

char

8

姓名

4

chemistry

flaot

化学

5

physical

float

物理

6

politic

flaot

政治

7

english

float

英语

8

maths

float

数学

11

ave

float

平均成绩

C预先录入数据如表3-2:

(名字换为中国人的)

表3-2成绩数据

num

name

chemistry

Physical

politic

english

maths

ave

112

樱木花道

113

流川枫

117

三井寿

118

宫城良田

123

赤木刚宪

程序流图

系统层次模块图

步骤1:

图命名

步骤2:

图命名

//

}f

/

图命名

图命名

\

步骤3:

 

图命名

 

部分程序及其说明

函数判断用户所选择的序号,再进入相应的函数。

Input():

用于建立一个链表,用来保存数据,具体的录入及插入代码在switch中

当case=2时实现。

Statistic():

统计平均成绩:

按各个学生进行平均分统计、按各个课程进行平均

分统计。

Lookup():

按学号进行查询,当无法找到与输入的学号相匹配的记录时显示出错

信息。

Delete():

按学号进行删除操作,当输入的学号不匹配时就显示出错信息。

Output():

此函数用于输出班级所有学生成绩记录。

Menu():

—个显示函数,通过键入数字来运行各个功能函数。

4程序运行结果

程序经过调试无错后,进行编译、组建、执行后,程序结果显示出来。

(1)

4-1。

在班级成绩选项中,可以查询到该班级每个学生各科成绩、总成绩和平均成绩,以及任课老师,还能进行增加、修改、删除等工作,如图

(2)

出学主威兹管理

匚■区

 

图4-1班级成绩

(3)在年级成绩选项中,可以查询到该年级所有学生各科成绩、总成绩、平均成

(4)

绩以及科目总成绩、平均成绩,如图4-2。

Ei■LU"JKITPJrviv匚itTCViv」U“1bhWIVTt巧EEJ"H4

图4-2年级成绩

(5)在参数设置选项中,可以进行班级的创建和删除,还可以进行科目的调整,如图4-3。

图4-3参数设置

 

4结束语

通过此次学生成绩管理系统的设计,使我对C++程序设计有了深一步的了解,对

系统设计及开发有了比较全面的思路。

首先,通过对系统进行需求分析,确定各个功能函数;然后一个个具体地对他们进行编程,并且仔细检查看是否有错;在完成这一步之后才开始构造主函数,通过主函数把各个功能函数联系起来,编译修改错误和不足之处

在实际编程过程中会遇到很多不同的错误,有时候是一些很明显很细节的语法错

误,这些可以通过编译来查找错误的所在,然而那些并不明显难以查找的隐性错误却真

让人头痛,没有办法只好利用断点调试来一步步检查代码中的错误,这样为了找一个错误花费了大量的时间,但是找出错误之后的感觉却是非常好的。

同时我翻阅了大量的书籍,尽管大部分书都只是翻了一部分页码而已,却给了我一个非常有价值的经验。

总之,此次系统设计给我们提供了一个既动手又动脑、自学、独立实践的机会,

使我们养成了勤翻阅各种相关资料的习惯,将书本上的理论知识和实际有机地结合起来,锻炼了实际分析问题和解决问题的能力,提高了适应实际、实践编程的能力,为今后的学习和实践打下了良好的基础。

参考文献

格式不规范,照第1条修改

Robert着,C++数据结构与程序设计,清华大学出版社.时间

2)

3)

C++面向对象程序设计习题解析与上机指导--清华大学出版社--陈维兴着

C程序设计(第二版)--清华大学出版社.谭浩强着

4)

C++语言基础教程--清华大学出版社.吕凤煮着

5)

and.C++Annotations.Version,ICCE,UniversityofGroningen

6)

附录:

源程序清单

f",,;

if=="=")"[%s]=%.2f",,;

if=="<=")

"[%s]<=%.2f",,;

();

();

if())

{

AfxMessageBox(没有符合条件的记录");

();

return;

elsethis->Show();

voidCBaDialog:

:

OnAll()

{

//TODO:

添加你的控制告示操作代码

this->Select();

();

this->Show();

voidCBaDialog:

:

OnEdit()

{

//TODO:

在这添加你的控制告示操作代码

CEditDialogdlg;

if()==IDOK)

if(strcmp,"1234")!

=0)

AfxMessageBox("尔没有权限更改记录!

请重输入密码:

");

else

this->Select();"[学号]=%d",;

();

if())

AfxMessageBox(没有此记录");

elsefor(inti=0;i<5;i++)floatp=0,q=0;

if(i==0)

p=;

q=;

if(i==1)

p=;

q=;

if(i==2)

p=;

q=;

if(i==3)

{

p=;

q=;

if(i==4)

p=;

q=;

();

=+p-q;

=m_nRecordCount;

if(p>=60&&q<60)

+=1;

if(p<60&&q>=60)

=1;

if(p>=80&&q<80)

+=1;

if(p<80&&q>=80)

();

if(!

())

else

break;

();

=++++;

=(float)5);

();

();

();

();

();

this->Select();

this->Show();

this->display();

();

 

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

当前位置:首页 > 医药卫生 > 基础医学

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

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