问答详情
源自:4-5 C#中do…while循环

为什么能打印5?

            int x = 2;

            do

            {

                x++;

                Console.WriteLine(x);

            }

            while (x > 2 && x <= 4);    //结果是3 4 5   ,5是怎么来的,5不是不满足while的条件吗?


提问者:小白ccc1 2018-10-26 10:38

个回答

  • 你最重要79
    2018-10-26 12:13:40
    已采纳

    第一次循环的时候不需要对x的值进行判断,这时x = 2,然后x++变成了3;此时输出的3

    第一次循环结束以后才对x的值进行判断,这时x = 3满足 x > 2 && x <= 4 的条件

    执行第二次循环,这时x = 3 然后 x++ 变成了4,此时输出4;

    第二次循环结束仍然满足条件,这时x = 4

    继续第三次循环,然后进行了x++(划重点),这时x = 5了,做最后一次输出,此时输出的x是5

    第三次循环结束,再判断x的值已经不满足循环的条件了,循环结束