VBS条件语句与循环语句

VBS条件语句与循环语句

  记录下最近学习VBS(Visual Basic Script)的收获,这篇文章主要讲述条件语句、逻辑运算符和循环语句的用法。
  在学习过程中,相关的笔记直接以注释的形式写在了.vbs文件中(注释总结了语句的用法结构,非注释部分为例程),下文直接放出来,有兴趣的小伙伴可以复制粘贴到txt当中,然后把扩展名改为.vbs,双击运行查看结果。也可以使用相关的文本编辑器,如sublime text等。

1. 条件语句

  conditional statement.vbs中记录了条件语句的用法,包括if语句、select case语句,另外加了一点逻辑运算符的的知识。

' ===========条件语句=============
' if语句			line7
' select case语句	line26
' 逻辑运算符			line49


' +++++++++| if语句 |+++++++++
' if bool语句 then
' 	语句块
' elseif bool语句 then
' 	语句块
' else
' 	语句块
' end if
dim a,b
a=12
b=13
if a>b then
	msgbox("a>b")
elseif a=b then
	msgbox("a=b")
else
	msgbox("a<b")
end if

' +++++++++| select case语句 |+++++++++
' select case 变量名
' case 值
' 	语句块
' ......
' case 值
' 	语句块
' case else
' 	语句块
' end select
dim num
num=int(inputbox("key in a integer number range from 1 to 3"))
select case num
case 1
	msgbox("one")
case 2
	msgbox("two")
case 3
	msgbox("three")
case else
	msgbox("something wrong with the number")
end select

' +++++++++| 逻辑运算符 |+++++++++
' not,and,or优先级由大到小
c = false
if (a>10 or b>10) and not c then
	msgbox("a or b bigger than 10")
end if

2. 循环语句

  loop statement.vbs中记录了循环语句的用法,包括for…next语句、for each … next语句、do…loop语句,对于while … wend语句,由于许多地方不推荐使用,所以没有记录其用法,只提到存在这种循环语句。

' =============循环语句=============
' for next语句			line7
' for each next语句 	line26
' do loop语句 			line49
' while wend语句		line76


' ++++++++++++| for next语句 |++++++++++++
' for next语句是基于计数的
' 	for语句规定计数变量的初值和终值
' 	next语句会以step规定的步进递增计数变量,无step则默认为1
' 	exit for退出for next语句,一般与条件语句组合,控制何时退出循环
' ---------------------------------
' for 变量=初值 to 终值 [step 步进]
' 	语句块
' 	[条件语句 exit for]
' 	语句块
' next
dim i
for i=0 to 5 step 2
	if i=4 then 
		exit for
	end if
	msgbox(i)
next

' ++++++++++++| for each next语句 |++++++++++++
' for each next语句针对集合中的每个项目或数组中的每个元素来执行循环
' 	for each语句遍历集合中的每个元素执行循环体,形式为for each x in group,循环体中对元素也就是x处理
' 	exit for退出for each next语句,一般与条件语句组合,控制何时退出循环
' ---------------------------------
' for each 元素 in 集合
' 	语句块
' 	[条件语句 exit for]
' 	语句块
' next
dim students(3)
students(0)="Zhao"
students(1)="Qian"
students(2)="Sun"
students(3)="Li"
for each x in students
	if x="Sun" then
		exit for
	else
		msgbox(x)
	end if
next

' ++++++++++++| do loop语句 |++++++++++++
' do loop语句重复执行某段代码直到条件是true或变成true,当不知道循环次数时可使用这一语句
' 	do或loop后一般会加上until或while控制的条件语句,否则就会成为死循环
' 		until或while放在do后面时,先判断条件,再执行循环
' 		until或while放在loop后面时,先执行循环,再判断条件
' 	exit do退出do loop语句,一般与条件语句组合,控制何时退出循环
' ------------------------------------
' do [until bool语句]/[while bool语句]
' 	语句块
' 	[条件语句 exit do]
' 	语句块
' loop [until bool语句]/[while bool语句]
dim cnt,num_in
const num=5
cnt=0
do until cnt>2'while cnt<3与until cnt>2等价
	num_in=int(inputbox("key in a integer number range from 0 to 9:"))
	if num_in=num then
		msgbox("right")
		exit do
	else
		msgbox("wrong")
	end if
	cnt=cnt+1
loop

' ++++++++++++|while wend语句|++++++++++++
' while wend相当于do while ... loop,但不支持exit do跳出循环,建议使用do loop语句替换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值