VisualBasicVisualBasic循环程序结构循环程序结构For...NextFor...Next语语句句求出100以内能被3整除的所有正整数求1900-2100间的所有闰年棋盘上的麦粒************************有一类问题具有特点:操作步数很多,步骤有重复性开始结束X能被3整除YYX=1输出X的值X=x+1X<=100NYN示例:PrivateSubCommand1_Click()fori=1to10PrintiNextiEndSubFor-nextFor-next循环语句的格式循环语句的格式ForFor循环变量循环变量==初值初值ToTo终值【终值【StepStep步长】步长】循环体循环体NextNext循环变量循环变量For循环语句的执行过程1,循环变量被赋予初值2,判断循环变量是否超过终值,如果超过,则退出循环执行NEXT后面的语句;如果没有超过则执行循环体。3,遇到NEXT语句,则循环变量增加一个步长,转到(2),继续循环。开始循环变量=初值循环变量是否超过终值?循环体循环变量=循环变量+步长结束NYFor-next循环语句的流程图说明:(1)For和Next必须成对出现,缺一不可。(2)For语句中的“循环变量”与Next语句中的“循环变量”必须一致。(3)当初值小于终值时,步长应为正数;当初值大于终值时,步长应为负数(4)如果省略Step,则步长为1。(5)循环体可以是一个或多个语句。例题二S=0Fori=1to8step3S=S+3NextiPrints此循环语句中,循环变量是?初值是?终值是?步长是多少?循环体中的语句是?练习:阅读程序给出结果,并在VB上运行验证S=2Fori=1to3step2S=s+1NextiPrintsS=2Fori=1to3S=s+1NextiPrintsS=2Fori=5to3step2S=s+1NextiPrintsS=2Fori=5to3step-2S=s+1NextiPrints程序分析实践(1)PrivateSubCommand1_Click()ForA=1To10PrintANextAEndSub运行结束时A的值是11循环次数为10结果是12345678910结果是S=5050运行结束时A的值是101循环次数为100(2)PrivateSubCommand1_Click()ForA=1To100S=S+ANextAPrint“S=”;SEndSub结果是S=5050运行结束时A的值是0循环次数为100(3)PrivateSubCommand1_Click()ForA=100To1Step-1S=S+ANextAPrint“S=”;SEndSub学生探讨如何修改左边的程序来实现计算1*2*3*…*9*10的功能PrivateSubCommand1_Click()ForA=1To10S=S*ANextAPrint“S=”;SEndSub结果为S=0PrivateSubCommand1_Click()S=1ForA=1To10S=S*ANextAPrint“S=”;SEndSub结果为S=3628800求求1970-21001970-2100间的所有闰年间的所有闰年①①、普通年能被、普通年能被44整除且不能被整除且不能被100100整除的整除的为闰年。为闰年。②②、世纪年能被、世纪年能被400400整除的是闰年。整除的是闰年。实例讲解实例讲解