【VB超简单入门】九、程序执行顺序 1
前言
最近作者很忙啦,这个系列的教程更新得也比较慢,在公众号后台看到有同学在催更了,所以抽出时间写一篇哈~ 有同学担心我没时间继续更新下去,这里再重申一下,只要有人看我就会抽出时间继续更新的啦,请大家放心哈。
关于程序执行顺序
我们写程序的时候,是一行一行的写的,在程序运行的时候,也是一行一行的运行,不过现实中的需求都是非常复杂的,如果只能一行一行运行的话,那我们的程序就不能叫做「程序」了,只能称为「批处理」。
在VB中,我们有三种方法来控制程序的执行顺序,分别是:判断、循环、跳转。 下面我们将分别进行学习。
判断
判断顾名思义就是判断啦,比如判断两个是的大小,判断用户名和密码是否匹配等等。 判断又有两种类型的语句,条件语句和选择语句。
条件语句
下面是一个简单的条件语句结构:
if 条件1 then
dosth()
elseif 条件2 then
dosth2()
else
dosth3()
end if
对于 if
语句,是这样执行的,如果 条件
表达式的值为 true
,那么就执行 then
后面的代码块,如果为 false
,就执行 else
后面的语句。
举个例子:
判断两个数的大小
代码功能:判断两个数的大小,输出最大的数。
dim a as integer
a = 1
dim b as integer
b = 2
if a > b then
print a
else
print b
end if
代码执行结果:
2
判断用户名
代码功能:判断用户名是否为管理员
dim username as string
username = inputbox("enter your username")
if username = "admin" then
print "you are super user"
else
print "you are not super user"
end if
运行结果:
输入:admin
输出:you are super user
根据季节说月份
代码功能:根据用户输入的季节输出对应月份
dim season as string
season = inputbox("please enter season")
if season = "spring" then
print "Jan, Feb, Mar"
elseif season = "summer" then
print "Apr, May, June"
elseif season = "autumn" then
print "July, Aug, Sept"
elseif season = "winter" then
print "Oct, Nov, Dec"
end if
运行结果:
输入:spring
输出:Jan, Feb, Mar
选择语句
在上面的例子里面,有一个根据季节说月份的,一年只有四个季节,所以问题还不大,可以写四个 if else if
语句来判断,假如现在要反过来,根据月份说季节,难道要写12个语句不成?
为了解决代码太罗嗦的问题,VB中采用了 select
的选择语句,和C语言里的 switch
语句差不多,不过VB的 select
语句功能更强大!
语法:
值选择,即根据变量的不同值,执行不同的操作。
select case 变量
case 1
call dosth1()
case 2
call dosth2()
case 3
call dosth3()
case else
call dosth4()
end select
select case
语句如何运行?
VB先计算测试表达式,然后将表达式的 值与每个Case
的值进行比较。若相等, 就执行与该Case
相关联的语句块。如果 不止一个Case
与测试表达式匹配,那么 只对第一个匹配的Case执行与之相关联 的语句块;如果在表达式列表中没有一 个值与测试表达式相匹配,则执行Case Else
子句中的语句。
可以对每个Case
语句设置多个比较值
' 飞机棋游戏
dim number as integer
number = int(rnd * 6) + 1
select case number
case 1,6
print "起飞"
case 2,3,4,5
print "不起飞"
end select
也可以用设定范围的方法来设置多个比较值
dim score as integer
score = inputbox("请输入考试分数")
select case score
case 90 to 100
print "优秀"
case 80 to 90
print "良好"
case 60 to 80
print "及格"
case else
print "不及格"
end select
条件选择,VB的 select
语句独有的功能,很好用。
相当于简化版本的 if else if
结构。
dim score as integer
score = inputbox("请输入考试分数")
select case sorce
case is < 60
print "不及格"
exit select
case is > 60 and is < 80
print "及格"
exit select
case is > 80 and is < 90
print "良好"
exit select
case is > 90
print "优秀"
end select
由于时间和篇幅关系,不再举更多例子,更详细的语法介绍将在下次更新时展开,敬请关注哈~
end
关于程序执行顺序本文就介绍到这里了,循环和跳转将在接下来的文章中介绍,希望同学们持续关注哈~
About
了解更多有趣的操作请关注我的微信公众号:DealiAxy 每一篇文章都在我的博客有收录:blog.deali.cn