汇编语言版学生管理系统演示教学
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汇编语言版学生管理
系统
汇编语言课程实习报告
实习题目学生成绩管理系统
学生姓名
班级(学号)
院系
指导老师
提交时间
成绩
目录
题目一:学生成绩管理系统 (4)
二、总体设计 (5)
程序主界面: (8)
主程序流程图 (13)
详细设计 (15)
菜单模块 (15)
输入模块 (16)
主程序代码 (18)
调试过程 (29)
总结: (32)
参考文献: (33)
题目一:学生成绩管理系统
基本功能:
1、输入学生各门功课成绩;(假设3门功课,每门功课有唯一编号)
2、对学生成绩记录进行查询检索(按学号、姓名)
3、能修改指定学号的学生成绩;
4、对学生成绩排序(按总成绩降序排列);
5、、统计指定学号的学生的平均成绩在屏幕上显示;
6、统计指定编号课程的平均成绩在屏幕上显示;
7、每门课程成绩分析:在屏幕上显示3门课程的各个分数段的学生人数;(分数段为:>=90;80~89;70~79;60~69;<=59)
8、退出系统功能
二、总体设计
功能结构图设计
依据程序的功能需求,描述该系统功能的结构图如下:
图1 系统功能结构图
student struc
names db 18 dup ('$')
maths dw?
english dw?
chinese dw?
total dw 0
avg dw 0
student ends
DATAS SEGMENT
stu_array student 10 dup(<>)
构建了student结构体,在存储方面使得结构变得简单。insert proc near
inc num
scur1 0
altert mes7
scur 1
altert mes4
sub bh,bh
mov bl,num
bindec bx
crlf
mov ah,09
lea dx,mes
int 21h
sub ah,ah
mov al,28d
mul num
mov si,ax
scur 2
mov ah,0ah
lea dx,stu_array[si].names
sub bh,bh
mov bl,stu_array[si+1].names
mov stu_array[si+bx+2].names,'$'
int 21h
scur 3
call decibin
mov stu_array[si].maths,bx
add stu_array[si].total,bx
scur 4
call decibin
mov stu_array[si].english,bx
add stu_array[si].total,bx
scur 5
call decibin
mov stu_array[si].chinese,bx
add stu_array[si].total,bx
mov bl,3
mov ax, stu_array[si].total
div bl
sub ah,ah
mov stu_array[si].avg,ax
ret
insert endp
用num做全局变量为学生的编号,在学生查询方面比较便利。
程序主界面:
Insert子程序界面:
Modify子程序界面:
Query子程序界面:
学生平均成绩分析界面:
学科成绩界面:
分数段界面:
依据程序的功能的划分,各功能定义如下:
(1)插入学生成绩
功能名:insert
功能描述:通过此功能可以插入一名学生的成绩信息,学号、姓名、语文成绩、数学成绩、英语成绩。
(2)学生平均成绩
功能名: Printit
功能描述:通过此功能指定学号的学生平均成绩
(3)学科平均成绩
功能名:Academic
功能描述:通过此功能可以显示指定编号的学科平均成绩。
(4)查询学生成绩
功能名:query
功能描述:通过此功能可以查询一名学生的成绩信息,学号、姓名、语文成绩、数学成绩、英语成绩。
(5)修改学生成绩
功能名:modify
功能描述:通过此功能可以修改一名学生的成绩信息,学号、姓名、语文成绩、数学成绩、英语成绩。
(6)学生成绩排名
功能名:rank
功能描述:通过此功能可以查看学生成绩总分排名。
(7)各科分数段人数
功能名:Analysiss
功能描述:通过此功能可以查看每科分数段人数。
(8)退出学生成绩管理系统
功能名:esc
功能描述:退出成绩管理系统
主程序流程图
N
Y
N
Y
N
Y