VB课设-学生成绩统计程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学生成绩统计程序设计

VB课程设计

班级信管 C081 班

成员( 087267 )齐琪

( 087264 )龙泉江

指导教师李艳

2010/12/12

目录

1、设计题目 (3)

2、设计思路 (3)

①划分功能模块 (3)

②确定各模块的算法 (3)

3、过程图示 (5)

4、程序清单 (5)

5、更完善的方案 (7)

6、收获与心得体会 (7)

1、设计题目:学生成绩统计程序

①在程序界面中单击“读入数据”按钮,从数据文件中将学生姓名信息及三门课程的成绩读入,此时可以在屏幕上显示读入了多少学生的信息(例如:读入了40名学生信息)。

②在程序界面中单击“统计”按钮,计算所有学生数学、英语、计算机的平均分数,统计每个学生三门课的平均分。

2、设计思路

①划分功能模块

分为四个模块:标准模块、全局变量模块、输入数据模块、统计模块。

②确定各模块的算法

标准模块:定义结构体变量stu。

全局变量模块:定义全局变量,以便各程序使用、存储、共享各变量数据。

输入数据模块:运用for循环,“依次输入各学生的姓名和数学、英语、计算机的分数”,存入结构体数组;嵌入if条件语句,以输入姓名是空时为标志,结束输入,并把此时的i 的值减1后,赋值给t,t便是读入的学生人数。

统计模块:使用for循环,将结构体数组里各组的数学、英语、计算机三科分数平均,定义一个新的数组,存储求得的平均分,再依次输出各学生的各科成绩和平均分。

3、过程图示

4、程序清单

Dim a(100) As stu '存储学生信息

Dim ave(100) As Double '存储学生平均成绩

Dim t As Integer '记录读入学生人数

Dim i As Integer '循环控制变量

Private Sub Command1_Click()

Print "依次输入各学生的姓名和数学、英语、计算机的分数:"

For i = 1 To 100 '输入学生各项信息a(i).name = InputBox("姓名:")

If a(i).name = "" Then '当输入姓名为空时,结束输入t = i - 1

Print ""

Print "读入了" & t; "名学生信息" '显示读入多少名学生信息Exit For

End If

a(i).x = InputBox("数学:")

a(i).y = InputBox("英语:")

a(i).z = InputBox("计算机:")

Next i

End Sub

Private Sub Command2_Click()

Print ""

Print "姓名数学英语计算机平均分数"

Print "——————————————————————"

For i = 1 To t

ave(i) = (a(i).x + a(i).y + a(i).z) / '计算各学生平均成绩Print a(i).name; " "; a(i).x; " "; a(i).y; " "; _

a(i).z; " "; ave(i) '输出统计的所有学生的各科成绩和平均成绩Print "——————————————————————"

Next i

End Sub

自定义类型标准模块程序:

Type stu '设自定义类型为stu

name As String '姓名

x As Double '数学

y As Double '英语

z As Double '计算机

End Type

5、更完善的方案

统计功能,不应该只是统计单个学生的平均分,而是需能统计所有学生的列平均分(单科成绩平均分),甚至统计出总分、最高分和最低分。

6、收获与心得体会

通过这次编程,熟悉了VB的编程功能,初步了解到VB与C++的区别,各有千秋,也更一步巩固了所学的VB编程知识。

编程领域很广阔,我们所学的C++、VB、数据库都是冰山一角,欲窥其全貌、运筹帷幄,还须更深的学习与探究!

相关文档
最新文档