while和do-while语句的异同

2022-03-08 04:00
电脑报 2022年8期
关键词:代码区别语句

一般来说一个复杂的程序逻辑可以归入以下三种结构之一:顺序结构(从上往下逐行执行,每句都执行)、分支结构(有条件地执行某语句,并非每句都执行)、循环结构(反复执行相同或相似的代码)。不同的结构,代码的语法结构也是各不相同,今天和大家一起聊一聊常见的循环语句。

在实际问题当中会遇到有规律的重复性操作,对应到程序中就需要重复执行某些语句,一组被重复执行的语句称之为循环体。目前较流行的编程语言(C、Java、Python)当中有三种类型的循环语句:for语句、while语句和dowhile语句。在循环语句结构中有三个要素:循环变量的初始化、循环的条件(以循环变量为基础)、循环变量的改变(向着循环的结束变化)。

在循环语句练习中经常有同学会问小陈老师while语句和dowhile语句的区别,今天我也着重讲一下两者的区别以及注意事项。

首先对比一下图片中左右段代码的区别,并思考一下运行后输出的结果是否相同,从中我们不难看出两者初始變量num值都为1,循环的条件都为num小于10,循环变量的更新也是num每次增加1,并且输出的语句都是一样的,所以两者运行输出后的结果都为1-10。

如果对两段代码的循环条件稍加改变,将num<10改为num<0。运行的结果就完全不相同了,左边while代码运行后不输出任何东西,右边dowhile代码运行后输出数字1。

这是为什么呢?其实,最关键的原因在于循环过程中执行的顺序,在while循环中,num1首先被赋值为1,其次会对num1进行一个判断查看num1是否小于0,如果num1小于0不执行循环体内容,直接结束循环,输出结果为空。

在dowhile循环中,num2首先被赋值为1,直接执行循环体中的内容,输出数字1,最后进行判断num2是否小于0,如果小于0结束循环。

所以while循环和dowhile循环运行的结果可能是相同的,但是在特殊的环境下也存在运行结果不相同的情况。

简单总结,while循环会首先判断一个条件是否满足,如果条件满足,则执行后面紧跟着的语句或语句括号,然后再次判断条件是否满足,如果条件满足则再次执行,直到条件不满足为止。dowhile循环和while循环很像,唯一的区别是在循环体执行结束的时候才来判断条件。也就是说,无论如何,循环都会执行至少一遍,然后再来判断条件。

猜你喜欢
代码区别语句
神秘的代码
一周机构净增(减)仓股前20名
重要股东二级市场增、减持明细
位置的区别
近期连续上涨7天以上的股
看与观察的区别
区别
基本算法语句
我喜欢
作文语句实录