4.7 do-while结构

do while语句和while语句非常类似。其形式如下:
do{
    语句;
}while(条件);
do~while和for、while最大的区别就是它必定会执行一次语句,执行完之后才去验证条件。相当于这样:
(1)执行被控制的代码,到第(2)步;
(2)验证条件是否成立,如果成立则进入第(1)步,否则退出循环;
另外这个语句在最后需要加上分号,也就是这样:“while(条件);”。 例如
do{
    System.out.println("你好");
}
while(5 > 6);
这几行语句将打印一个“你好”,就算循环条件是5>6这样明显不成立的式子。因为是先运行一次,再去验证条件,如果成立则继续循环。如果换成while:
while(5 > 6){
    System.out.println("你好");
}
运行后不会打印任何东西。

练习题

  • 阅读代码后作出选择
    1.运行结果是 (2分) [选择]
    A.
    B. 语法错误,无法打印
    C. 打印0到控制台
    D. 打印15到控制台
    E. 打印10到控制台
    int i=0;
    int sum=0;
    while(i < 5){
            sum=sum+i;
            i++;
    }System.out.println(sum);
    
    2.运行结果是 (2分) [选择]
    A.
    B. 语法错误,无法打印
    C. 什么都不打印
    D. 打印5个"你好"
    E. 死循环,一直打印"你好"
    for(int i=0;i > 5;i++){    System.out.println("你好");    i++;}
    
    3.运行结果是 (2分) [选择]
    A.
    B. 打印5个“你好”
    C. 打印6个“你好”
    D. 打印1个“你好”
    E. 语法错误
    int i=0;
    do{
            System.out.println( "你好");
            i++;
    }
    while(i < 5);
    
  • 填空
    1.这段代码的打印结果是: (5分) [填空]
            
            
            
            
            
    2.填空 (10分) [编程填空]
    补齐代码,使得运行后打印
    98473
    8473
    473
    73
    3
    public static void main(String[]args){    int a=98473;    int base=        ;    do{        System.out.println(a);        a=        ;        base=        ;    }    while(a > 0);}