C语言从入门到精通(视频实战版)
上QQ阅读APP看书,第一时间看更新

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循环结构中执行,这样会大幅提高程序的运行效率。