while循环
while循环的写法和if很像。但是循环没有else。
当代码执行到大括号底部时,会重新返回去判断条件。如果条件仍然满足,则重新执行循环。
int i = 0;
while (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
}
可以理解为
int i = 0;
if (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
if (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
if (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
if (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
if (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
if (i < 10)
{
Console.WriteLine("执行第" + i + "次");
i = i + 1;
//。。。无限套娃
}
}
}
}
}
}
和if一样,循环也可以使用嵌入式语句。
不一样的是,在循环的条件部分中声明变量,作用域只在循环体内部。
do-while循环
while循环在进入前会判断一次条件。就像if一样。如果条件不满足则一次都不会执行。
do-while循环则先执行循环,再判断条件。适用于一些有初始操作的逻辑。
比如输入密码。首先要输入了密码再判断是否输入正确。不正确再重新输入。
这种时候在开头首先进行一次判断是没有意义的。
do-while的写法是关键字do+语句块+while+条件+分号
string s;
bool b;
do
{
Console.WriteLine("请输入密码");
s = Console.ReadLine();
b = s == "123";
if (!b)
{
Console.WriteLine("密码输入错误");
}
} while (!b);