C#——while循环语句
C#——while循环语句
循环语句有两种形式,具体结构如下图。
注意两种结构的区别:
while:先判断,后执行。
do ……while:先执行,后判断(至少执行一次)。
namespace While循环 { class Program { static void Main(string[] args) { /* 死循环 while (true) { Console.WriteLine("我在运行"); } Console.ReadKey(); //报错:检测到无法访问的代码(死循环了,无法执行到这里) */ //例如:死循环,打印i int i = 0; while (true) //每执行一遍大括号中的代码,while后的表达式都会被计算一次。 { i++; Console.WriteLine(i); } Console.ReadKey(); } } }具体应用看下面的例子。
(一)while循环
(1)死循环:while后的小括号中的表达式始终为true.
(如例1):打印1,2,3,4……
namespace While循环 { class Program { static void Main(string[] args) { //例如:打印从1到10的整数。 int i = 0; while (i<10) { i++; Console.WriteLine(i); } Console.ReadKey(); } } }
注意:每执行一遍大括号中的代码,while后的表达式都会被计算一次。
只要while后小括号中的表达式为true,就不断执行大括中的代码。
(2)while循环
例2:打印从1到10的整数。
namespace While循环 { class Program { static void Main(string[] args) { /* 例如:死循环,打印i int i = 0; while (true) //每执行一遍大括号中的代码,while后的表达式都会被计算一次。 { i++; Console.WriteLine(i); } Console.ReadKey(); */ // 打印从1到10的整数:1 2 3 4……10 int i = 0; while (i<10) //为什么打印的结果是1 2 3……10,而不是0……9或是0……10 { i++; Console.WriteLine(i); } Console.ReadKey(); } } }从下面的代码对比中注意例1和例2的区别:
namespace While循环 { class Program { static void Main(string[] args) { // 打印1 2 3……10 int i=0; do //先执行一次,再判断。 { i++; Console.WriteLine(i); } while (i < 10); Console.ReadKey(); } } }
注意例1例2的区别:问题:为什么例2打印的结果是1 2 3……10,而不是0……9或是0……10?(二)do……while语句
注意:do while 先执行,后判断(至少执行一次如例3)。
例3:
例2和例3的打印结果是一样的,但二者是有区别的,这上两个例子就是下面这句化的例证。
while:先判断,后执行(例2)。
do ……while:先执行,后判断(例3)。