程序控制流英文叫:Flow of Control
我们开发一个程序,其实大部分逻辑都是放在方法里面的,其他一部分逻辑会再属性,运算符等其他函数成员中。
控制流分类
所谓控制流(flow of control) 指程序代码的执行走向。
默认情况下,程序从上至下顺序执行每条语句。
而流程控制语句可以改变代码执行顺序。
控制语句有很多,我们在后面的课程会详细学习,本节课先来一个开胃菜,让大家初步认识一下控制流。
C#有三大主要的控制流:
顺序执行是基础,三类控制流分别实现分支、循环、跳转逻辑;
- 选择语句(Selection statements)
- 迭代语句(Iteration statements 循环)
- 跳转语句(Jump statements)
每种语句下面又分多种不同的写法:
选择语句
主要的目的是:根据一些条件,进行选择性执行某些语句,跳过不执行某些语句。
- if 条件成立时执行某部分代码
- if–else 二选一执行
- switch 多分支匹配,从一组代码中选择其一执行
迭代语句
主要目的是:满足条件就重复执行一段代码
- for 先判断条件再执行循环
- while 先判断条件再执行循环
- do while 先执行代码再判断条件
- foreach 遍历集合内每一个元素,自动执行一次
跳转语句
- break 直接退出当前循环
- continue 跳出本次循环,不执行后面的代码,跳至循环末尾,开启下一轮循环
- goto 跳转到标记命名语句
- return 终止当前方法,回到调用处
以上读者可以先知道一下就可以,后续会详细学习
class Program
{
static void Main()
{
int age = 18;
if (age >= 18) //条件满足就执行if语句块中的代码
{
Console.WriteLine("你已经成年了");
}
int score = 85;
if (score >= 90) //多次判断
{
Console.WriteLine("优秀");
}
else if (score >= 80) //不满足上面的条件 就判断这个条件
{
Console.WriteLine("良好");
}
else if (score >= 70) //不满足上面的两个条件 就判断这个条件
{
Console.WriteLine("中等");
}
else if (score >= 60) //不满足上面的三个条件 就判断这个条件
{
Console.WriteLine("及格");
}
else //上面所有条件都不满足 就执行else语句块中的代码 相当于兜底
{
Console.WriteLine("不及格");
}
//for循环语句 i从0开始循环,当i小于10时,执行循环体内的代码,每次循环结束后i自增1
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i);
}
int sum = 0;
while (sum < 100) //当sum小于100时,执行循环体内的代码
{
sum += 10; //每次循环结束后sum自增10
Console.WriteLine(sum);
}
int count = 5;
do
{
Console.WriteLine("这句代码总是会执行一次");
count++; //每次循环结束后count自增1
} while (count<5); //就算条件不成立 ,循环体内的代码也会执行一次
int[] scores = { 90, 80, 70, 60, 50 }; //定义了一个数组 里面有5个元素
foreach (var item in scores) //遍历数组里面的元素,读取一个放到item中,然后执行循环体内的代码,直到遍历完所有元素,每次读取到下一个就放到item中
{
Console.WriteLine(item);
}
}
}
Code language: JavaScript (javascript)
以上代码读者可以自行拷贝到VS中执行,后续课程会逐一详细学习每个语句。