DoWhile…Loop前测试循环语句

DoWhile…Loop前测试循环语句

ID:46940728

大小:252.81 KB

页数:10页

时间:2019-11-30

DoWhile…Loop前测试循环语句_第1页
DoWhile…Loop前测试循环语句_第2页
DoWhile…Loop前测试循环语句_第3页
DoWhile…Loop前测试循环语句_第4页
DoWhile…Loop前测试循环语句_第5页
资源描述:

《DoWhile…Loop前测试循环语句》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Do…Loop循环语句For…Next循环语句针对于知道固定循环次数的循环程序。在许多问题中,我们事先并不能确定循环需要执行的次数,这时,我们可以选择Do…Loop循环语句。Do…Loop循环语句共有两种情况:(1)DoWhile…Loop循环语句(2)Do…UntilLoop循环语句。在Do…Loop循环语句中,可以把循环控制部分放在循环的前面(即前测试循环),也可以放在循环的后面(即后测试循环)DoWhile…Loop循环语句DoWhile<循环条件表达式>循环体[ExitDo]Loop功能:首先测

2、试循环条件表达式是否成立,若循环条件满足,则进入循环。DoWhile…Loop循环语句又称为“当型循环”,即当循环条件成立,才开始进入循环。说明:若循环没有结束,但程序需要退出循环时,可以使用ExitDo语句退出循环。前测试循环的语法:DoWhile…Loop循环语句的流程图如下循环体循环条件表达式是否例题:编程输出1~5的算术平方根。要求用DoWhile…Loop循环语句。程序代码如下:循环的详细执行过程如下:(1)首先,x的值为1;(2)判断当前循环条件表达式是否成立,如果成立,则执行循环体;(3)

3、此时成立,则执行循环体;(4)在循环体内部,对x的值进行了加1运算,此时的x的值为2;(5)程序跳至(2),重新判断循环条件是否成立。(6)当循环语句执行了5次后,此时循环变量x的值为6,当跳至步骤(2)时,不满足循环条件了,此时循环结束。Rem编程输出1~5的算术平方根。PrivateSubCommand1_Click()DimxAsLongx=1'循环变量赋初值DoWhilex<=5'当型循环PrintSqr(x)'输出x=x+1'循环变量根据条件增加LoopPrint"循环结束后循环变量x的值为"

4、;xEndSub说明:(1)x作为循环变量,首先要赋初值;(2)循环变量在循环体内部需要根据条件进行更改。详见form1。提问1:循环语句共循环了几次?答:5次。提问2:当循环语句结束后,此时的循环变量是多少?答:此时的循环变量x值为6。提问3:DoWhile…Loop循环语句与For…Next循环语句的区别有哪些?答:(1)For…Next的循环变量一般用整型变量;Do…Loop循环不做要求。(2)For…Next的循环变量在语句“For循环变量=初值To终值[Step步长]”内;Do…Loop循环需

5、要在循环开始之前赋初值。(3)For…Next的循环变量会自动增加步长;Do…Loop循环需要在循环体内用赋值语句重新更改。例题:编程求[1,100]内的奇数和。分析:本题即求S=1+3+5+…+99的和。程序代码如下:Rem编程求[1,100]内的奇数和。PrivateSubCommand1_Click()Dimx,sAsLongx=1'x为循环变量,循环开始前赋初值s=0's为累加求和的变量,没有累加前,s的初始值应该为0DoWhilex<=100s=s+x'将变量x的值进行累加x=x+2'循环变量

6、根据条件更改LoopPrint"[1,100]内的奇数和为";sPrint"循环结束后循环变量x的值为";xEndSub详见form2。前面两个例题都是对For…Next循环语句转变为Do…Loop循环的例子,从中可以看出,For…Next循环是可以用Do…Loop循环替代的。但是,如果针对于前面两个例题的例子,我们发现,使用For…Next循环语句要比较方便。也就是说,针对于这类有规律、能确定循环次数的循环程序,选用For…Next循环是最佳选择。但对于某些问题,我们无法确定应该执行多少次循环,这时如

7、果还用For…Next循环,就会不是很方便,对于这类不能确定循环次数的问题,我们可以选用Do…Loop循环很好的解决这类问题。For…Next循环与Do…Loop循环的比较以及如何选择的问题不能确定循环次数的例题例题:对于求和运算S=1+2+3+…x,问:当x为多少时,其和S的值恰好超过20。分析:这个问题可以用循环语句来解决,但是,不能确定需要循环的次数,此时,我们就可以考虑Do…Loop循环来解决这类不能确定循环次数的问题。程序代码如下:PrivateSubCommand1_Click()Dimx,

8、sAsSinglex=1s=0DoWhiles<=20s=s+xx=x+1Loopx=x-1MsgBox("当x等于"&x&"时,其和恰好超过20。"&"此时的和s等于"&s)EndSub手动分析答案为:当x=6时,其和S=21恰好超过20。详见form3。程序调试的小技巧如果题目是问:当x为多少时,其和S的值恰好超过20000?这么大的数当然不能用手算出结果,那怎么知道程序的结果是否正确呢?小技巧:不妨将题目中的数值该小,比如更改为“其和

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。