循环语句:反复执行一组语句 直到满足循条件后停止
1 For ...Next 循环 强制型循环 指定循环的次数
2Do...Loop 循环 条件型循环 循环次数并不固定 当条件为ture或者变为ture之前一直执行
3 While Wend循环 用的少 当条件表达式值为Ture时,执行循环,否则跳出循环
4For Each...Next 循环 特殊循环 当枚举结束后才跳出循环 不指定循环条件 也不指定循环结束次数
5循环嵌套 For ...Next 嵌套循环给一个二维数组赋初值
6使用Exit语句强行退出循环
1 For ...Next循环 强制型循环 指定循环的次数 语法如下:
For counter=start To end [Step stesize]
程序语句块
Next
counter 循环的计数器变量 每次增加或者减少一个步长
start 计数器的初始值 可以是常量 变量 也可以是表达式
end 计数器的终值 可以是是常量 变量 也可以是表达式
stepsize 计数器的步长 可以为正 负整数 和小数 如省略 默认为1 表示每次循环加1
例题:求1到100的平方和 For...Next循环
<%@language="vbscript" codepage="65001"%>
<%Option Explicit '强制声明变量%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>For...next求1到100的平方和</title>
</head>
<body>
<%
Dim intA,intSum
intSum=0
For intA=1 To 100
intSum=intA^2+intSum
Next
Response.write"1到100的平方和是:"&intSum
%>
</body>
</html>
补充: 循环语句修改为 For intA=1 To 100 Step 2 就可以计算1到100奇数的平方和。
2 Do...Loop 循环 条件型循环 循环次数并不固定 当条件为ture或者变为ture之前一直执行
入口型循环:
Do While 条件表达式
程序语句块
Loop 首先检查条件是否为Ture,Ture进入循环,否则跳出循环,执行Loop后的语句
Do Until 条件表达式
程序语句块
Loop 首先检查条件是否为False,False进入循环,为Ture跳出循环,执行Loop后的语句
换句话说:重复执行循环,直到条件变为Ture
出口型循环:
Do
程序语句块
Loop While 条件表达式 无条件的执行一次后,再判断条件表达的值是否为Ture,Ture继续执行,否则跳出循环语句
Do
程序语句块
Loop Until 无条件的执行一次后,再判断条件表达的值是否为False,False继续执行,当条件表达式的值变为Ture则跳出循环语句
例题 1到100的平方和 Do Loop 循环
<%@language="vbscript" codepage="65001"%>
<%Option Explicit '强制声明变量%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Do Loop循环实现1-100的平方和</title>
</head>
<body>
<%
Dim I,lngSum
I=1
lngSum=0
Do While I<=100
lngSum=I^2+lngSum
I=I+1
Loop
Response.write"1到100的平方和=" &lngSum
%>
</body>
</html>
3 While Wend循环
While 条件表达式
程序语句块
Wend 当条件表达式为Ture时,执行循环 否则跳出循环
将实例Do...Loop循环语句替换为以下语句 执行结果是一样的
<%
While I<=100
lngSum=lngSum+I^2
I=I+1
Wend
%>
4For Each...Next循环 枚举循环
For Each 元素 In 集合
程序语句块
Next
例题:把数组的元素组成字符串并输出
<%@language="vbscript" codepage="65001"%>
<%Option Explicit '强制声明变量%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>For Each...Next循环实例</title>
</head>
<body>
<%
Dim intA(2),Item,strSum
intA(0)="a"
intA(1)="b"
intA(2)="c"
For Each Item In intA
strSum=strSum&Item
Next
Response.WRITE"全部数组元素组成的字符串是:"&strSum
%>
</body>
</html>
5循环嵌套 For ...Next 嵌套循环给一个二维数组赋初值
<%
Dim intA(9,9)
Dim I,J
For I=0 To 9
For J=0 To 9
intA(I,J)=10
Next
Next
Response.Write"程序运行结束"
%>
6使用Exit语句强行退出循环
在For...Next和Do Loop循环中 强行退出循环的语句分别是Exit For和Exit Do
Exit语句通常和If语句结合使用 的
<%
Dim I,lngSum
For I=1 To 100
lngSum=lngSum+I^2
If lngSum>10000 Then Exit For
Next
Response.WRITE "最后的结果:" &lngSum
%>