预计阅读本页时间:-
while循环和for循环都是入口条件循环,在每次执行循环之前先检查判断条件,这样循环中的语句就有可能一次也不执行。C也有退出条件循环,判断条件在执行循环之后进行检查,这样就可以保证循环体中的语句至少被执行一次,这被称为do while循环。程序清单6.15给出了一个例子。
程序清单6.15 do_while.c程序
广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元
程序清单6.15中的程序在用户输入13之前反复读取输入值。以下是一个运行的例子:
使用了while循环的与之等价的程序会长一点,就像程序清单6.16中那样。
程序清单6.16 entry.c程序
下面是do while循环的一般形式:
statement部分可以是简单语句或复合语句。请注意do while循环本身是一个语句,因此它需要一个结束的分号。请参见图6.5。
图6.5 do while循环的结构
do while循环至少要被执行一次,因为在循环体被执行之后才进行判断。与之相反,for或者while循环可以一次都不执行,因为它们是在执行之前进行判断。应该把do while循环仅用于那些至少需要执行一次循环的情况。例如一个密码程序要包括一个循环,它的伪代码如下:
要避免以下伪代码中的这种do while结构:
这里,在用户回答no之后仍将执行some clever stuff部分,因为判断来得太迟了。