网站首页 > 基础教程 正文
学习笔记之C#基础——流程控制语句
流程控制对于任何一门编程语言来说都是至关重要的,它提供了控制程序步骤的基本手段。包括条件判断语句,循环控制,跳转语句。
条件判断语句
条件判断语句用于根据某个表达式的值从若干条给定语句中选择一个来执行。条件判断语句包括if语句和switch语句两种。
IF语句
使用if条件语句,可选择是否要执行紧跟在条件之后的那个语句。IF语句包括简单IF语句,if..else语句和if...else if多分支语句。
- 简单if语句:
if(布尔表达式)
{
执行内容
}
例:
static void Main(string[] args)
{
int a = 1;
int b = 2;
if (b > a)
{
a = b; //b>a,则将b的值赋值给a
}
Console.WriteLine("a="+a);
Console.ReadLine();
}
输出结果:
- if...else语句
if(布尔表达式)
{
执行内容
}
else
{
执行内容
}
例子:
static void Main(string[] args)
{
int a = 5;
int b = 3;
int c;
if (b > a)
{
c = b;
}
else
{
c = a;
}
Console.WriteLine("c="+c);
Console.ReadLine();
}
输出结果:
- if...else if...else语句
if(布尔表达式)
{
执行内容
}
else if(布尔表达式)
{
执行内容
}
...
else
{
执行内容
}
例子:
static void Main(string[] args)
{
int a = 2;
int b = 3;
int c = 4;
int d;
Console.WriteLine("请输入一个数字");
d =int.Parse( Console.ReadLine());
if (d < a)
{
Console.WriteLine("输入数字小于2");
}
else if(d < b)
{
Console.WriteLine("输入数字大于等于2但小于3");
}
else if (d < c)
{
Console.WriteLine("输入数字大于等于3但小于4");
}
else
{
Console.WriteLine("输入数字大于等于4");
}
Console.ReadLine();
}
switch多分支语句
switch语句是多分支条件判断语句,它根据表达式的值使程序从多个分支中选择一个用于执行的分支。
switch语句的基本格式如下:
switch(表达式)
{
case 常量表达式 :执行语句
break;
case 常量表达式 :执行语句
break;
case 常量表达式 :执行语句
break;
case 常量表达式 :执行语句
break;
default 语句
break;
}
static void Main(string[] args)
{
Console.WriteLine("今天想吃什么,抽一个编号,范围为1-5");
int M_num;
M_num=int.Parse(Console.ReadLine());
switch(M_num)
{
case 1:
Console.WriteLine("火锅");
break;
case 2:
Console.WriteLine("烧烤");
break;
case 3:
Console.WriteLine("汤锅");
break;
case 4:
Console.WriteLine("西餐");
break;
case 5:
Console.WriteLine("小吃");
break;
default:
Console.WriteLine("没得吃了");
break;
}
Console.ReadLine();
}
循环控制语句
循环语句主要用于重复执行嵌入语句,在C#中,常见的循环语句有while语句、do…while语句、for语句和foreach语句。
while语句
while语句用于根据条件值执行一条语句零次或多次,当每次while语句中的代码执行完毕时,将重新查看是否符合条件值,若符合则再次执行相同的程序代码,否则跳出while语句,执行其他程序代码。
static void Main(string[] args)
{
int sum=0;
int i = 1;
while (i < 5)
{
sum = sum + i;
i++;
}
Console.WriteLine("累计结果:"+sum);
Console.ReadLine();
}
结果:
do...while语句
do...while 和while的区别是while语句为先判断条件是否成立再执行循环体;而do…while循环语句则先执行一次循环后,再判断条件是否成立。也就是说do…while循环语句中“{}”中的程序段至少要被执行一次。
static void Main(string[] args)
{
int sum=0;
int i = 1;
do
{
sum = sum + i;
i++;
}
while (i < 5);
Console.WriteLine("累计结果:"+sum);
Console.ReadLine();
}
for语句
for语句是C#程序设计中最有用的循环语句之一。for语句用于计算一个初始化序列,然后当某个条件为真时,重复执行嵌套语句并计算一个迭代表达式序列;如果为假,则终止循环,退出for循环。
static void Main(string[] args)
{
int sum=0;
for (int i=0;i < 5;i++)
{
sum = sum + i;
}
Console.WriteLine("累计结果:"+sum);
Console.ReadLine();
}
foreach语句
foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何foreach语句都可以改写为for语句版本。foreach语句用于枚举一个集合的元素,并对该集合中的每个元素执行一次嵌入语句。
static void Main(string[] args)
{
int sum = 0;
int[] i = {2,4,5,7 };
foreach (int j in i)
{
sum = sum + j;
}
Console.WriteLine("累计结果:" + sum);
Console.ReadLine();
}
输出结果:
跳转语句
break语句
break语句只能应用在switch、while、do…while、for或foreach语句中,当多个switch、while、do…while、for或foreach语句互相嵌套时,break语句只应用于最里层的语句。如果要穿越多个嵌套层,则必须使用goto语句。
continue语句
continue语句只能应用于while、do…while、for或foreach语句中,用来忽略循环语句块内位于其后面的代码而直接开始一次新的循环。当多个while、do…while、for或foreach语句互相嵌套时,continue语句只能使直接包含它的循环语句开始一次新的循环。
goto语句
goto语句用于将控制转移到由标签标记的语句。实际应用中尽量减少使用,除非跳出深层嵌套循环。
return语句
return语句表示返回,当把return语句用在普通的程序代码中时,它表示返回,并且不再执行return之后的代码。当把return语句用在类中的方法时,它就是控制返回方法的调用者,如果方法有返回类型,return语句必须返回这个类型的值;而如果方法没有返回类型,则应该使用没有表达式的return语句。
猜你喜欢
- 2024-10-12 340.C# 中最有价值的语法糖及其应用场景
- 2024-10-12 Dev——手把手教你学会CheckedListBox(C#)
- 2024-10-12 流程控制-循环语句(5-5)-C#编程零基础到入门学习
- 2024-10-12 C#12那些有意思的特性 c# 特性的实现原理
- 2024-10-12 C#得到网关和DNS地址 .netcore 网关
- 2024-10-12 C#设计模式之4-原型模式 c++原型模式
- 2024-10-12 C#05(判断、循环语句) c#循环次数由什么决定
- 2024-10-12 C#:编程界的全能王,其他语言只能望尘莫及?
- 2024-10-12 C# 中的模式匹配与安全的类型转换:is 和 as 运算符的深入解析
- 2024-10-12 C# 循环语句介绍 c#循环输出
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)