3. do-while 语句

do-while 语句同样是根据某个条件控制一段代码(一条语句或复合语句)重复执行。但与 while 不同之处在于 do-while 内部的语句是先执行再判断。即先执行语句部分,然后再判断循环条件来决定是否再执行下一次。也就是说 do-while语句内的语句至少要执行一次。

语法:

do {
    语句
} while (表达式);

语法中:dowhile 是关键字。

注意:语法中的最后一定要有一个英文的分号(;)结束。

do-while 语句的执行过程:

  1. 执行 语句 部分。
  2. 计算 表达式,根据计算结果值来决定是否再次执行语句
    1. 表达式的计算结果为非零值时,则回到第一步,再次执行语句
    2. 表达式的计算结果为零值时(整数:0、浮点数:0.0、字符:'\0'或空指针:(void*)0),此 do-while 语句执行结束。

示例

写一个程序:输入六位数字密码,如果密码不是 123456 则继续输入。否则提示登录成功,退出程序。

#include <stdio.h>

int main(int argc, char *argv[]) {
    int pwd;

    do {
        printf("请输入密码:");
        scanf("%d", &pwd);
    } while( pwd != 123456);

    printf("登陆成功!");

    return 0;
}

练习