5.2.2 do…while循环结构
图5.11 程序运行结果
do…while循环结构与while循环结构具有相同的功能,都是根据用户所设定的条件,决定是否执行相应的代码段。其不同点在于,在do…while循环结构中,不论其参数值是不是true,其功能代码段都会至少被执行一次。在本小节中,将讲解do…while循环结构的使用原型及其使用方法等。
1.do…while循环结构使用原型
do…while循环结构的功能代码是放在do结构中的,而条件参数则放在while中。其具体的使用原型如下:
do//do…while循环结构 { ……//循环功能的代码段 }while(istrue)//对用户指定的条件参数进行判断
在代码中,如果参数istrue为true时,则功能代码段将被循环执行。否则,功能代码段将只被执行一次,如图5.12所示。
图5.12 do…while循环结构执行流程图
注意 用户根据do…while循环结构的这一特点,可以将某些功能进行试探性地执行。若发现错误,则跳出循环即可。这样,可以方便实现用户的功能。
2.使用do…while循环结构
为了验证do…while循环结构的功能代码至少会被执行一次,用户可以在其功能代码段中添加一行输出提示信息的代码,并且将while的参数设置为false。如果程序运行后,输出了指定的提示语,则表示验证成功;否则,验证失败。其具体的代码如下:
#include <stdio.h>//包含头文件 main()//主函数 { do { ……//省略部分代码 printf("测试成功! ");//输出提示语 }while(false);//设置条件为false return 0;//程序正常返回 }
在示例代码中,用户使用了输出指定提示语的方法,对do…while循环结构的运行特点进行验证。程序运行结果如图5.13所示。程序运行之后输出了用户指定的提示语,也就说明验证是成功的。此时,用户还可以将示例代码中while结构的参数修改为true,即“while(true)”。再次运行程序,其结果如图5.14所示。
图5.13 测试程序运行结果
图5.14 测试程序运行结果
如图5.14所示,由于用户已经将while结构的参数修改为true。所以,程序将循环执行其功能代码,即不断地输出指定的提示语。
注意 一般情况下,用户可以将一些需要进行数学运算或逻辑运算的功能代码放置到do…while循环结构中执行,这样会大幅提高程序的运行效率。