大作业学生成绩管理系统讲解Word文档格式.docx

上传人:b****4 文档编号:6476151 上传时间:2023-05-06 格式:DOCX 页数:13 大小:206.92KB
下载 相关 举报
大作业学生成绩管理系统讲解Word文档格式.docx_第1页
第1页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第2页
第2页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第3页
第3页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第4页
第4页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第5页
第5页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第6页
第6页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第7页
第7页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第8页
第8页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第9页
第9页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第10页
第10页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第11页
第11页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第12页
第12页 / 共13页
大作业学生成绩管理系统讲解Word文档格式.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

大作业学生成绩管理系统讲解Word文档格式.docx

《大作业学生成绩管理系统讲解Word文档格式.docx》由会员分享,可在线阅读,更多相关《大作业学生成绩管理系统讲解Word文档格式.docx(13页珍藏版)》请在冰点文库上搜索。

大作业学生成绩管理系统讲解Word文档格式.docx

micheal

70

20111003

linda

85

20111004

lee

88

92

功能模块图:

实现方法:

为了方便实现,通常会将一个复杂的任务分解为多个子任务逐步实现。

任务1:

显示“学生成绩管理系统”的菜单。

在VC++6.0集成开发环境下,编程打印输出如下图的菜单。

任务2:

在任务1的基础上,编写程序实现选择菜单项的功能。

即从键盘输入0~9之间的一个字符,然后显示输入字符对应的信息。

如输入的字符是1,则显示:

您选择了“1——创建成绩单”;

如果输入的字符不在0~9之间,则输出:

“非法输入”。

任务3:

在任务2的基础上,编写程序实现循环点菜功能。

如果输入的字符不在0~9之间,则输出“非法输入”。

以上过程可以循环往复地执行,直到输入字符0,则显示:

您选择了“0——退出”,然后按任意键结束整个程序的执行。

任务4:

在任务3的基础上,编写程序实现成绩管理的各菜单项的具体功能,包括创建成绩单(批量录入学生数据)和计算平均成绩、添加单个学生信息、删除某学生信息、编辑学生信息、统计优秀成绩的个数、基于学号或平均成绩排序、显示学生信息等功能。

假设每个学生的信息包括学号、姓名、数学、语文、英语和平均成绩。

重点考虑:

1)学生全部数据的定义和组织:

多个基本类型数组?

1个结构体数组?

2)各模块的实现顺序:

先实现创建成绩单,即成绩单录入模块,然后实现显示成绩模块,然后实现其他模块。

3)无论实现那个模块,当前表中的实际人数和表容纳的最大人数都是需要注意的重要对象。

4)创建成绩单

创建成绩单:

实现成绩录入,成绩输入过程如下图:

基本思路:

如果成绩单存在则不可二次创建,即当前表中人数>

0时,不可创建;

否则(表中无人)可创建成绩单,即可批量录入学生信息。

每个人的平均成绩在录入后,系统直接计算。

录入时需要注意两点:

a、结束标记,比如可以设计学号为0时,录入结束;

b、成绩表中实际人数达到最大值,也要结束录入。

4)显示成绩

如果表中无人,提示用户无成绩存在,否则输出全部信息。

当前表中的实际人数依然是关键。

5)添加学生

先判断表中人数,如果表中人数达到最大值,则提示用户不可添加学生信息,否则方可添加学生信息。

添加学生后,注意更新表中现有学生人数。

6)编辑学生信息

以学号为修改的关键字。

要求用户输入要修改学生的学号,然后查找该学生信息,如果表中无该学号,提示用户无此人,否则允许用户输入新的信息来覆盖旧的信息。

7)删除学生信息

以学号为删除的关键字。

要求用户输入要删除学生的学号,然后查找该学生信息,如果表中无该学号,提示用户无此人;

否则删除该学生信息,并提示用户已删除。

8)统计成绩

统计每科成绩为优秀(大于等于90分)的学生人数,并输出结果。

依然需要判断表中是否有人,如果无人提示用户,否则统计并输出结果。

9)排序成绩单

最好提供如下图所示的子菜单,否则就只能实现一种排序。

注意:

a、成绩表中少于2人(实际人数<

2)不应做排序

b、排序后不要直接输出,提示用户使用菜单项“7—显示成绩”输出排序结果。

尽可能代码重用,不要重复编写功能一样的代码。

任务5:

在任务4的基础上,追加从文件读入数据和将数据写入文件的功能。

菜单截图如下:

其中菜单项8“从文件读入”,用于从文件中读入学生成绩信息;

相反的,菜单项9“输出到文件”,用于将从键盘上输入的学生数据保存在磁盘文件中。

磁盘文件的好处是可永久保存数据。

将学生数据保存在磁盘文件中,可以让数据独立于程序而存在。

此外,从文件可以读入学生数据进行管理,以减少反复输入的麻烦。

a、无论读写,文件打开时,应该测试文件是否能正常打开,如果错误给出出错提示。

b、文件的格式,建议为文本文件,即ASCII文件,这样可以用记事本打开查看结果,文件内容如下图所示:

#include<

stdio.h>

#defineN10

main()

{

intbutton,button2,i,max=0,change,del,num[3]={0,0,0};

structstu

{

intno;

charname[20];

intmath;

intchi;

inteng;

}stu[N];

printf("

|--------------------------------------------------|\n"

);

||\n"

|学生成绩管理系统|\n"

|1——创建成绩单|\n"

|2——添加学生|\n"

|3——编辑学生|\n"

|4——删除学生|\n"

|5——统计成绩|\n"

|6——排序成绩单|\n"

|7——显示成绩|\n"

|8——从文件读入|\n"

|9——输出到文件|\n"

|0——退出|\n"

请输入编号(0~9):

"

scanf("

%d"

&

button);

if(button>

=9||button<

=0)

printf("

非法输入!

\n"

if(button==1)

您选择了1——创建成绩单:

%d\n"

button);

if(max>

=N)

{

printf("

已经超出最大值,不能创建"

//break;

}

输入学号为0时退出。

for(i=0;

stu[i].no!

=0&

&

i<

=N;

i++)

学号:

scanf("

stu[i].no);

姓名:

%s"

stu[i].name);

数学:

stu[i].math);

语文:

stu[i].chi);

英语:

stu[i].eng);

录入结束"

}

if(button==2)

printf("

for(i=max;

添加结束"

if(button==3)

请输入将要编辑学生的学号:

change);

if(change>

change<

=max)

{

scanf("

stu[change].name);

stu[change].math);

stu[change].chi);

stu[change].eng);

}

else

printf("

查无此人"

if(button==4)

请输入将要删除学生的学号:

del);

if(del<

=max&

del>

del!

{

stu[del].no=0;

stu[del].math=0;

stu[del].chi=0;

stu[del].eng=0;

该学生已删除"

}

else

if(button==5)

if(max!

for(i=0;

=max;

if(stu[i].math>

=90&

num[0]++;

if(stu[i].chi>

num[1]++;

if(stu[i].eng>

num[2]++;

数学优秀学生数:

%d\n语文优秀学生数:

%d\n英语优秀学生数:

num[0],num[1],num[2]);

if(button==6)

|-------------------------------------|"

||"

|排序菜单|"

|1.按学号升序排列|"

|2.按平均成绩升序排列|"

请输入选项编号(1~2):

button2);

if(button2==1)

 

}

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

当前位置:首页 > 职业教育 > 中职中专

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2