使用场景:当需要进行类似的重复操作时,就可以将每一次类似的操作作为代码块存放在循环语句中,通过循环重复执行。
一、while
样 式:
迭代变量(在循环过程中,通过对迭代变量进行修改,来影响循环条件为真或为假)
while(循环条件)
{
循环体(通常包含对迭代变量的处理)
}
流 程:
首先判断循环条件的真假,若为假,则直接跳过while{ }语句。若为真,则进入执行循环体,在循环体中修改迭代变量,循环体执行完成,继续返回顶部判断循环条件的真假,若为假,跳出循环语句。为真则进入while{ }执行循环体,重复以上操作。
- 注意:循环条件表达式,必须要有为假的情况,否则会导致死循环。
//迭代变量:表示次数
int count = 0;
//循环五次
while (count < 5)
{
//声明在循环内部的变量,每一次循环都会创建一个新的变量
int n = 3;
Console.WriteLine("hello world");
//记录打印的次数
count++;
Console.WriteLine(++n);
}
//计算1-10的累和
int i = 1;
int sum = 0;
while (i <= 10)
{
sum += i;
i++;
}
Console.WriteLine("1-10的和值为{0}。", sum);
//计算6的阶乘
int k = 2;
int mul = 1;
while (k <= 6)
{
mul *= k;
k++;
}
Console.WriteLine("6的阶乘为{0}。", mul);
二、for
样式:
for(迭代变量声明; 循环条件表达式; 迭代变量处理表达式)
{
循环体
}
执行流程:
首先执行迭代变量声明语句,然后判断循环条件表达式的真假,若为假,跳过for循环。若为真,则进入for循环执行循环体,循环体执行完成在返回到顶部,执行迭代变量处理表达式,然后继续判断循环条件的真假,重复以上步骤。
for和while的区别:
while的迭代变量声明在循环外部,作用域也在循环外部包含循环内部。
for的迭代变量特殊在可以声明在for之后的()中,此时的迭代变量的作用域只能在for语句内部;
- for后面小号中的三条语句,前两条要以分号结尾,第三条语句不可以有分号;
- 可以修改第三条语句,即迭代变量修改语句的位置;
- 也可以修改第一条语句,即迭代变量声明语句的位置。但是for后面的()中对应的分号不可以省略。
//计算6的阶乘
int mul = 1;
int i = 0;
for (; i < 6; )
{
i++;
mul *= i;
}
Console.WriteLine(mul);
//对于当前打印矩阵的操作:外层循环表示行
for (int k = 0; k < 3; k++)
{
//内层循环表示列
for (int j = 0; j < 2; j++)
{
Console.Write("{0}{1} ", k, j);
}
Console.WriteLine();
}