• C# 第二章『基础语法』◆第3节:while和do...while循环语句


            1、while循环

            用来实现“当型”循环结构,格式:

    1. while(表达式)
    2. {
    3. 语句
    4. }

            表达式一般是一个关系表达式或一个逻辑表达式,表达式的值应该是一个逻辑值真或假。当表达式的值为真时,开始循环执行语句;而当表达式的值为假时,退出循环,执行循环下一条语句。循环每次都是执行完语句后回到表达式处重新开始判断,重新计算表达式的值。

    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. namespace _20220731_2
    6. {
    7. class Program
    8. {
    9. static void Main(string[] args)
    10. {
    11. int i = 1;
    12. int Sum = 0;
    13. while (i<=100)
    14. {
    15. Sum += i;
    16. i++;
    17. }
    18. Console.WriteLine(i);
    19. Console.WriteLine(Sum);
    20. Console.ReadKey();
    21. }
    22. }
    23. }

            备注:循环体如果是多条语句,则需要用大括号括起来,否则循环体只执行while语句后的第一条语句。循环体内或表达式中必须有使循环结束的条件。

            2、do...while循环

            在有些情况下无论循环条件是否成立,循环体的内容都要被执行一次,这时可以使用do...while循环。

            do...while循环的特点是先执行循环体,在判断循环条件,其语法格式如下:

    1. do
    2. {
    3. 语句
    4. }while(表达式)

            do为关键字,必须与while配对使用。do与while之间的语句称为循环体,该语句是用大括号括起来的复合语句。do...while语句中的表达式与while语句中的相同,也为关系表达式或逻辑表达式,注意的是,do...while语句后一定要有“;”。

    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. namespace _20220731_2
    6. {
    7. class Program
    8. {
    9. static void Main(string[] args)
    10. {
    11. int i = 1;
    12. int Sum = 0;
    13. do
    14. {
    15. Sum += i;
    16. i++;
    17. } while (i <= 100);
    18. Console.WriteLine(i);
    19. Console.WriteLine(Sum);
    20. Console.ReadKey();
    21. }
    22. }
    23. }

            3、区别

            while语句适用于先进行条件判断,再执行循环结构的场景;而do...while语句则适用于先执行循环结构,在进行条件判断的场合。

            也就是说while语句,如果条件不成立,则循环结构一次都不会执行。而do...while语句,即使条件不成立,程序也至少会执行一个循环结构体。

  • 相关阅读:
    代码随想录算法训练营19期第50天
    Unity C# NullUtils
    Java-多线程
    SPECjvm 2008 小记
    19c-rac环境安装AHF
    golang常用包
    (十二)笔记MQ学习之优劣介绍
    云原生系统学习[Kubernetes]——02 Pod、Deployment、Service
    【线上问题】linux部署docker应用docker-compose启动报端口占用问题(感觉上没有被占用)
    system verilog(1) --- 数据类型
  • 原文地址:https://blog.csdn.net/qq_45336030/article/details/126107389