VB课程设计

发布 2022-10-02 06:32:28 阅读 4749

沈阳航空航天大学。

课程设计。学号 2009040601170

班级 94060105

姓名黄箫 指导教师徐晗

2023年 3月 16日。

沈阳航空航天大学。

课程设计任务书。

学院:机电工程学院专业:机械设计制造及其自动化班级:94060105

一、课程设计时间。

2023年3月14日~20日(第2周),共计1周。

二、课程设计内容。

机房计算机信息保存在文本文件或access数据库的一个表中,计算机信息至少包括:机房号,机位号,机器使用状态(在用为“1”,空闲为“0”,初始值为0)、使用者学号(初始为0)等。学生上机时,根据输入的学号按顺序或随机选用机器,此时程序要改写所选机器的使用状态和使用者学号;学生下机时要恢复所选机器的初始值。

用户界面中的菜单至少应包括“维护机器数据”、“学生上机”、“学生下机”、“退出”4项。

三、课程设计要求。

程序质量:贯彻事件驱动的程序设计思想。

用户界面友好,功能明确,操作方便;可以增加其它功能或修饰。

**应适当缩进,并给出必要的注释,以增强程序的可读性。

课程设计说明书:

课设结束后,上交课程设计说明书和源程序。课程设计说明书的内容参见提供的模板。

四、指导教师和学生签字。

指导教师学生签名:__

五、成绩。六、教师评语。

目录。需求分析 4

设计分析 4

技术要点 6

主要界面截图 11

总结 13完整的源程序 15

参考文献 21

需要建立一个上机管理系统,主要实现学生上机时自动分配机房和机器号、下机时将使用机器的信息清空以及对机器数据进行维护等功能。

1)概述:首先建立一个文本文件以储存机器信息数据,供程序调用。为实现直接、快速地访问文件中的数据,使用随机文件来储存。

启动程序的时候,自动读取已保存的数据。

数据维护中要能查看总数据数,查看某数据的机房号、机位号、使用状态、使用者学号,追加新数据、修改数据。

上机时输入学号,显示分配到的机房号机位号。

下机时输入学号,清空学号对应机器的使用信息。

每个功能有单独的窗口。

程序设计主要涉及到随机文件的打开与读写、多重窗体等知识。

2)总体设计:

3)详细设计:

1自定义类型变量的声明和使用。

在标准模块用type语句实现自定义类型,**如下:

type sj定义数据类型。

jf as integer用于存放机房号。

jw as integer用于存放机位号。

xh as string * 13 '用于存放学号,长度为13

zt as boolean用于存放使用状态,逻辑型。

end type

用dim语句声明该类型变量,**如下:

public s as sj

程序中用到自定义类型变量时可采用with语句,**如下:

with s

.jf = val(text1)

.jw = val(text2)

.xh = val(text3)

.zt = iif( true, false)

end with

2数据的储存及调用。

建立一个文本文件来存储机器信息数据。为了直接快速地访问数据,采用随机文件来存储数据。写入数据之前要打开文件,再写入,最后关闭文件。**如下:

open "g:\vb\上机管理系统\" for random as #1 len = len(s)

put #1, jl, s

close #

读取数据之前也要打开文件,之后要关闭文件,**如下:

open "g:\vb\上机管理系统\" for random as #1 len = len(s)

get #1, jl, s

close #

3多重窗体的使用。

窗体的显示与隐藏,**如下:

4 vb控制结构的灵活使用。

采用选择结构对条件进行判断,选择执行不同的分支,**如下:

if = true then

= true

else= true

end if

采用条件函数进行赋值,**如下:

= iif( true, false)

采用循环结构进行逐一对比,**如下:

for i = 1 to jl

get #1, i, s

if = val(text1) then输入的学号已登录。

msgbox "已登录账号,请确认后再输入", 提示"

close #

exit sub

end if

if = false then查找前面是否有空闲的机器,有就分配到该机器。

= val(text1)

= true

put #1, i, s

label4 =

label6 =

close #

msgbox "登陆完成", 提示"

exit sub

end if

if i = jl then没有查找到空闲机器。

exit for

end if

next i

退出和结束语句,**如下:

exit for

exit sub

end5运算符及标准函数的灵活调用。

将字符串转换为数值: =val(text1)

取小于或等于的最大整数: jf = int(jl / 5) +1

取模运算: jw = jl mod 5) +1

6菜单制作。

图1 主界面。

图2 数据维护界面。

图3 上机登录界面。

图4 下机界面。

经过一个星期的努力,终于圆满地完成了此次课设。通过这次课设,我学会了很多以往不会的知识,也巩固了大一下在课堂上学到的内容。

最开始拿到题目的时候,没有一点思路,因为我有大半年都没有用过vb了。然后一点点地翻课本,慢慢地就有了一些自己的思路:界面采用多重窗体、采用随机文件保存数据……

从界面设计到**编辑,我都是不断地在翻课本,一步一步的,我的程序终于有了雏形,能够达到最基本的要求。但是仔细一思考,问题又接二连三的冒出来了,比如:怎么才能限制已登录学号再次登录、怎么分配前面空闲的机位、怎么在一个机房满了的时候自动分配下一个机房的机位……再一次翻课本,认识到灵活采用vb控制结构的重要性,又加强了对vb内置标准函数的学习,问题就迎刃而解了。

再经过不断的改进,程序基本上就不存在bug了。

在这次课设中,我认识到了细心以及严密的逻辑的重要性。计算机语言本身要求就是很严格的,**中不能有一个字母的错误,有的地方甚至不能少一个空格;赋值的时候还要考虑到定义的变量的类型,比如在对整型变量赋值时,要利用val函数将文本框里输入的字符进行转换;在用选择结构的时候要考虑好各种条件以及在该条件下要干什么;在用循环结构的时候要想好循环体以及初值、终值是什么;什么地方需要适时地加上exit语句;还有各种结构、算法、函数、语句的灵活运用等等等等。如果不够细心,或者逻辑不够严密,有一丁点的错误,程序就不能正常运行。

而且,每个同学的课设题目都与实际生活联系得很紧密,这也让我认识到了vb的实用性,改变了以往认为vb对我们没有用的想法。以后的学习、生活中,我会更多地利用vb来解决一些困难。

总而言之,这次课设让我成长了很多,不仅仅是学到了更多的vb知识,能灵活地将这些知识用于实际生活中,更重要的是,改掉了从前粗心、想问题不想仔细的毛病,增强了我逻辑的严密性。这对我以后所有的学习以及工作都有很大的帮助。

模块**:type sj定义数据类型。

jf as integer用于存放机房号。

jw as integer用于存放机位号。

xh as string * 13 '用于存放学号,长度为13

zt as boolean用于存放使用状态,逻辑型。

end type

public s as sj, jl as integer '声明各过程均用到的变量。

form1**:

command 按钮。

private sub command1_click()

open "g:\vb\上机管理系统\" for random as #1 len = len(s)

VB课程设计

在本系统的设计中,主要实现如下一些功能 学习 测试 成绩统计与分析。其中,学习 部分要求教100以内的加 减 乘和除 测试 模块要求随机给出参与运算的数及运算类型,并判断用户的答案,测试完给出得分 成绩统计与分析 模块能够统计成绩各种运算的平均成绩,并画出成绩分布的曲线图或柱状图。欢迎界面 登录界面...

VB课程设计

基于vb的温湿度测试分析系统 1 概述。高精度的温湿度测试计与电脑等上位机相连,发挥电脑的数字处理运算的优势,对校验数据进行采集 智能修正 运算等,最后得出校验误差等结果并打印出校验单,省去人工计算 填表等麻烦。本温湿度测试分析系统设计,要求高精度的温湿度测试计通过rs 232串口与上位机电脑相连,...

VB课程设计

课程设计报告。课程设计题目 个性化多 器 学生姓名 李汉忠。专业 软件工程 电子商务 班级 10211123 学号 1021112336 指导教师 赵玉芹。2011年 5月 30 日。目录。第一章算法分析页码 第二章工作日志。第三章关键实现技术。第四章设计小结 一 算法分析。1.目录选择对话框 根据...