C#基础解析之Ⅲ(循环结构)
今天继续和大家探讨C#,今天我们来聊一聊C#中的循环结构。对于循环结构我想在所有语言中都会看到的!因为循环结构是一个又省时又省力的一个好方法!所以大家用的也比较普遍,接下来我们就一起进入循环结构。
在我们登陆QQ时,如果你的密码输入不正确就会一直提示你账号或者密码不正确,这个功能就是使用了循环结构,好的!我们还是来看个控制台程序的例子,我觉得例子是最容易说明问题的方法。
1 class Program
2 {
3 static void Main(string[] args)
4 {
5 Console.Write("登陆账号");
6 string name = Console.ReadLine();//接收登陆账号
7 Console.Write("登陆密码");
8 string password = Console.ReadLine();//接收登陆密码
9 //while循环判断登陆账号和密码是否都正确,有一个不正确就继续输入
10 while (name != "admin" || password != "123")
11 {
12 //如果登陆不正确就给出提示
13 Console.WriteLine("登陆账号或者密码不正确,请重新输入");
14 Console.Write("登陆账号");
15 name = Console.ReadLine();//再次接收账号
16 Console.Write("登陆密码");
17 password = Console.ReadLine();//再次接收密码
18 }
19 Console.WriteLine("登陆成功...");//登陆成功,循环结束
20 Console.ReadKey();
21 }
22 }
运行结果:
while循环结构语法:
while(条件表达式)
{
代码块;
}
流程图:
流程图说明:
while循环执行时,先判断条件表达式,如果条件表达式结果为真(true),执行while循环里的代码(就是登陆的账号和密码),如果条件表达式的结果为假(false),while循环结束(登陆成功)。这里在执行while循环之前,大家一定要给条件表达式里的变量赋值,就是先输入一次账号和密码,再做判断。
下一个do…while循环,对于do…while循环和while差不多,do…while是先执行,后判断,而while是先判断,后执行。do…while说白了就是先斩后奏的意思!呵呵!下面看个控制台程序的例子就会明白了:
1 class Program
2 {
3 static void Main(string[] args)
4 {
5
6 string answer;//先定义一个变量,用来保存
7 do
8 {
9 //输出提示并询问
10 Console.WriteLine("青苹果住在博客园");
11 Console.WriteLine("你是否知道青苹果(Y/N)");
12 answer = Console.ReadLine();//接收答案
13 } while (answer != "Y" && answer != "y");
14 Console.WriteLine("我知道青苹果");
15 Console.ReadKey();
16 }
17 }
运行结果:
我简单的解释一下这个例子,这个例子就相当于你问路,当你问第一个人说不知道后,你就会去问下一个人,直到你问到有人知道路线的为止(也就是回答Y的人)。
我们来看一下do...while循环的语法吧:
do
{
代码块;
}while(条件表达式);
流程图:
流程图说明:
从程序开始,首先执行一次循环里的代码块,然后执行while里的条件表达式进行判断,如果结果为真(true),继续执行代码块,也就是开始循环,如果为假(false),循环结束。
While和do…while都是不确定循环的次数,while是判断了之后再去执行,而do…while是先执行再去判断,至少执行一次。下面我们来看一个已经确定循环次数的,for循环,
for循环是用在已经知道循环的次数来进行循环的,还是看个控制台程序:
1 class Program
2 {
3 static void Main(string[] args)
4 {
5
6 //我们就拿西游记九九八十一难比喻吧(本人非常鄙视那些翻拍的东西,比如说:新西游记)
7 //循环输出第几难,如果到81难了就结束循环,num代表第几难。
8 for (int num = 1; num <= 81; num++)
9 {
10 Console.WriteLine("第几难{0}难", num);//输出第几难
11 }
12 Console.WriteLine("九九八十一难结束");
13 Console.ReadKey();
14 }
15 }
运行结果:
这个例子是已经确定了循环次数,在一般我们知道循环次数的情况下一般用for循环。
来看一下for循环的语法吧!
for(表达式1;表达式2;表达式3)
{
代码块;
}
这个语法中的表达式我简单的说一下吧,可能刚一看有点晕,这里面的表达式1是赋值语
补充:软件开发 , C# ,