用来实现“当型”循环结构,格式:
- while(表达式)
- {
- 语句
- }
表达式一般是一个关系表达式或一个逻辑表达式,表达式的值应该是一个逻辑值真或假。当表达式的值为真时,开始循环执行语句;而当表达式的值为假时,退出循环,执行循环下一条语句。循环每次都是执行完语句后回到表达式处重新开始判断,重新计算表达式的值。
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
-
-
- namespace _20220731_2
- {
- class Program
- {
- static void Main(string[] args)
- {
- int i = 1;
- int Sum = 0;
- while (i<=100)
- {
- Sum += i;
- i++;
- }
- Console.WriteLine(i);
- Console.WriteLine(Sum);
- Console.ReadKey();
- }
- }
- }
备注:循环体如果是多条语句,则需要用大括号括起来,否则循环体只执行while语句后的第一条语句。循环体内或表达式中必须有使循环结束的条件。
在有些情况下无论循环条件是否成立,循环体的内容都要被执行一次,这时可以使用do...while循环。
do...while循环的特点是先执行循环体,在判断循环条件,其语法格式如下:
- do
- {
- 语句
- }while(表达式)
do为关键字,必须与while配对使用。do与while之间的语句称为循环体,该语句是用大括号括起来的复合语句。do...while语句中的表达式与while语句中的相同,也为关系表达式或逻辑表达式,注意的是,do...while语句后一定要有“;”。
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
-
-
- namespace _20220731_2
- {
- class Program
- {
- static void Main(string[] args)
- {
- int i = 1;
- int Sum = 0;
- do
- {
- Sum += i;
- i++;
- } while (i <= 100);
- Console.WriteLine(i);
- Console.WriteLine(Sum);
- Console.ReadKey();
- }
- }
- }
while语句适用于先进行条件判断,再执行循环结构的场景;而do...while语句则适用于先执行循环结构,在进行条件判断的场合。
也就是说while语句,如果条件不成立,则循环结构一次都不会执行。而do...while语句,即使条件不成立,程序也至少会执行一个循环结构体。