while循环
- while 语法:
while(循环体) { 循环体; }
执行过程:程序运行到 while 处,首先判断 while 所带的小括号内的循环条件是否成立,如果成立的话返回 true, 则执行循环体,执行完一遍循环体后,再次回到循环条件进行判断,如果依然成立,则继续执行循环体直至不成立跳出 while 循环。
特点:先判断,再执行,有可能一遍循环都不执行。
- do-while 语法
do
{
循环体;
}while(循环条件);
执行过程:程序首先会执行 do 中的循环体,执行完成后,去判断 do-while 循环的循环条件,如果成立,则继续执行 do 中的循环体,如果不成立, 则跳出 do-while 循环。
特点: 先循环,再判断,最少执行一遍循环体。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 高山循环结构
{
class Program
{
static void Main(string[] args)
{
//要求用户输入用户名和密码,只要不是gaosan 、520
// 就一直提示用户名或密码错误,请重新输入。
string name = "";
string pwd = "";
do
{
Console.WriteLine("请输入用户名");
name = Console.ReadLine();
Console.WriteLine("请输入密码");
pwd = Console.ReadLine();
if (name != "gaosan " || pwd != "520")
{
Console.WriteLine("用户名或密码错误请重新输入");
}
} while (name != "gaosan " || pwd != "520");
Console.WriteLine("登录成功");
Console.ReadKey();
}
}
}
for循环
for语法:
for(表达式1; 表达式2; 表达式3) { 循环体; }
表达式1 一般为声明循环变量,记录循环的次数。(声明赋初值:从第几次开始循环)
表达式2
表达式3 一般为改变循环条件的代码,使循环条件有一天不再成立。(++、- -)
执行过程:程序首先执行表达式 1 ,声明了一个循环变量用来记录循环的次数, 然后执行表达式 2 , 判断循环条件是否成立, 如果表达式 2 返回的结果为 true,则执行循环体,当执行完循环体后,执行表达式 3 ,然后执行表达式 2 继续判断循环条件是否成立,如果成立则继续执行循环体,如果不成立,则跳出 for 循环。(注意:表达式 1 只执行一遍)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 高山水仙花数
{
class Program
{
static void Main(string[] args)
{
// 找出100-999间的水仙花数、
// 水仙花数指的就是 这个百位数字、
// 百位的立方 + 十位的立方 + 个位的立方 == 当前这个百位数字
// 153
// 百位:153/100
// 十位:153%100/10
// 个位:153%10
for (int i = 100; i < 999; i++)
{
// 获取 百位、十位、个位
int bai = i / 100;
int shi = i % 100 / 10;
int ge = i % 10;
// 判断 百位的立方 + 十位的立方 + 个位的立方 == 当前这个百位数字
if (bai * bai * bai + shi * shi * shi + ge * ge *ge == i)
{
Console.WriteLine("水仙花数:"+i);
}
}
Console.ReadKey();
}
}
}
知识点
- 在循环语句中,一般总会有那么一行代码,能够改变循环的条件,使 3终有一天不再成立,如果没有那么一行能够改变循环条件的代码,也就是变成了死循环。
- 各种循环嵌套往往会完成意想不到的结果。
- break:立刻结束当前循环。
- continue : 立刻结束本次循环,继续执行下次循环。