、次数是有限的VB的循环语句:For…Next、DoWhile…LoopForEach…Next、While…Wend应用最多的:For…Next与DoWhile…-For…Next循环For…Next循环一般应用于循环次数已知的场合For<循环变量>=初值To终值[Step步长]语句块(循环体)Next[循环变量]工作原理返回目录循环变量=初值循环变量超出范围?-For…Next循环[]求1+3+5+7+…+99PrivateSubForm_Click()DimSumAsInteger,IAsIntegerSum=0'保存累加和,先清零ForI=1To99Step2Sum=Sum+INextIMsgBox"1+3+5+…+99="&Sum,,"求和"EndSub返回目录本例的特点是数据项之间相差2,即Step的值为2思考:例中当输出对话框出现时,I的值是多少?如果省略Step2,程序的结果如何?For语句能不能改写成ForI=99To1Step-2?-For…Next循环[]求平均成绩ConstN=10'学生人数PrivateSubForm_Click()DimSumAsInteger,IAsIntegerDimDataAsInteger,AverageAsSingleSum=0'存放累加值的变量清零ForI=1ToN'循环40次,步长值为1省略Data=InputBox("输入第"&I&"位同学的成绩","求平均分")Sum=Sum+DataNextIAverage=Sum/NMsgBox"全班"&N&"名学生的平均分为"&Average,,"求平均分"-Do…<条件表达式>循环体LoopDo循环体LoopWhile<条件表达式>条件表达式成立?循环体NoYes条件表达式成立?循环体NoYes先判断后执行先执行后判断特点:-Do…Loop循环[]计算平均分PrivateSubForm_Click()DimDataAsInteger,SumAsInteger,NAsIntegerDimAverageAsSingleSum=0:N=0Data=InputBox("输入第"&N+1&"个同学的成绩","求平均分")DoWhileData<>-1'-1表示结束输入Sum=Sum+DataN=N+1Data=InputBox("输入第"&N+1&"个同学的成绩","求平均分")LoopAverage=Sum/NMsgBoxN&"位同学的平均分为"&Average,,"求平均分"-Do…Loop循环[]Sum=1+2+3+…+N求Sum不超过10000的最大整数值和数据项数NPrivateSubForm_Click()DimSum,NAsIntegerN=0'开始时项数为0Sum=0'保存累加值的变量Sum清零DoWhileSum<=10000N=N+1Sum=Sum+NLoopSum=Sum-NN=N-1Print"Sum=";Sum,"N=";NEndSub返回目录当Sum的值超出10000时循环才终止。因此Sum值要减去多加的一个N;而在循环过程中,N也被多加了一个1,需要减去。-Do…<条件表达式>循环体LoopDo循环体LoopUntil<条件表达式>特点:条件表达式不成立执行循环体内容先判断后执行条件表达式成立?循环体NoYes先执行后判断
VB循环结构程序设计 来自淘豆网m.daumloan.com转载请标明出处.