C#入门之条件结构

原创 2017年01月03日 18:04:38

一. C#用流程图描述程序逻辑

流程图是程序步骤的图形化表示方法。流程图中包括如下符号:


以上图形中,流程线用来连接相邻的两个步骤;每一个程序都有且仅有一个开始和结束。


例如,求2个浮点数的和


用代码实现



二. C#中判断和分支

请看下面的流程图,判断手机账户余额是否不足10元,如果不足给出提示:


在C#中,这个结构成为条件结构,通常用 if 关键字来实现


 if 右边的判断为 true 的时候,会执行分支一;如果判断为 false ,则不会执行分支一。

小贴士: if(表达式) 中的表达式必须为 bool 类型。


三. C#中 if...else 条件结构

条件结构可以有两个分支,例如


用代码实现,条件为 true 时执行的分支写在 if() 后面的{}中;条件为 false 时执行的分支写在 else 后面的{}中。


它的基本逻辑是:当条件为 true 时,执行分支1,否则,执行分支2。

每一个 if...else 结构都包含 1 个条件和 2 个分支,而程序会根据条件的真与假,选择执行其中的某一个分支。

条件必须为 bool 类型的表达式,写在 if 后面的圆括号里。分支写在 2 个 {} 里。

当条件为 true 时,执行 if 后面的分支,当条件为 false 时,执行 else 后面的分支。


四. C#中嵌套的 if 结构

程序开发中,往往需要先判断一个条件是否成立,再判断另一个条件。

例如

验证账号是否为“admin”,如果不是则提示错误;如果是,则验证密码是否为“bj2022”


用代码实现



五. C#中多重 if 结构

如果有多个条件,其中只有一个成立,就可以用多重 if 结构,它的基本语法如下


程序运行时,将从上到下依次判断条件,若某个条件为 true ,则执行对应的分支,并且停止后面条件的判断。

例如

小明考试,90分以上奖励一台手机,80-89分奖励一个滑板,60-79分奖励一个烧饼,60以下没有奖励。

0-100的分数被划分为4档,需要做3次条件判断。

用代码实现,输出结果为“奖励一个烧饼”


多重 if 结构包含多个条件,每个条件对应一个分支。

运行时,从上到下依次判断每一个条件,当某个条件为 true ,就执行对应的分支,并且不再验证其他的条件;

若所有的条件均为 false ,则执行最后的 else 分支。


六. C#中 else 与 if 的匹配

1. 上节中的多重 if 结构,如果某个分支只包含一条命令,那么是可以省略大括号{}的。


如果分支中包含2条以上的命令,是不能省略{}的。


2. 如果 if 和 else 比较多,又省略了{},怎么判断那一个 if 和哪一个 else 是一对呢?

例如


请参考下面2条原则:

A. 每一个 else 与前面离它最近的 if 配对。

按照这个原则,上面示例代码的两个 else 都与第二个 if 配对,这显然是不可能的,于是又有了第二个原则。

B. 多个 else 都与同一个 if 相近时,最内层的 else 优先配对。

这样,第一个 else 处于内层,就与第二个 if 优先配对,第二个 else 只能与第一个 if 配对。上面的示例代码会输出“C”。


小贴士:编写条件结构时,尽可能加上 {} 可以省掉不必要的错误和麻烦。


七. C#的条件运算符

C#提供了一种条件运算符,能够代替简单的 if...else 结构。这种条件运算符的语法如下:

条件表达式 ? 分支1 : 分支2
?: 就是条件运算符,可以看到它有3个操作数,所以又被称为三元运算符

它的运算逻辑是:当条件表达式为 true 时,执行分支1;当条件表达式为 false 时,执行分支2。

例如


输出值为“未成年人”


八. C#的 switch 结构

 switch 条件结构,可以用来对变量进行多个分支的等值判断。

语法如下:


(变量)与每一个 case 后面的常量进行等值比较,如果相等,就执行对应的分支。

执行分支以后, break 关键字会使 switch 结构中止,不会再判断后面的常量。

如果变量与所有的常量都不相同,则执行 default 后面的分支。


例如

下面的代码,根据运算符完成了四则运算中的一项:


上面的代码,因为变量oper的值与 case '*' 匹配,所以会输出乘积“18”。


小贴士:switch 中的(变量)只能是3种类型:整型(如 int )、字符型( char )、字符串类型( string )。





C#中的三大结构

通过学习知道C#中中有三大结构,分别是分支,循环和跳转结构。接下来依次来介绍一下这三大结构。 【分支结构】   if 结构 基本语法: if(条件) {语句1,语句2,......} 用一对大括号来...
  • zx15732623832
  • zx15732623832
  • 2016年06月14日 21:01
  • 759

我的AIX入门之路[完整版]

最近一不小心混成了这里aix入门论坛的版主,看到论坛的人气在慢慢汇集,而我又没做什么贡献,忽然想想,聊聊我的aix入门学习之路,让大家的茶余饭后,闲看闲聊一番:嘿,有点意思,以供消遣。     随手...
  • xinpo66
  • xinpo66
  • 2011年10月24日 23:07
  • 3951

条件结构之switch语句

在编程语言中,条件语句一般除了if结构,还有一个switch语句结构。在选择条件少时,if语句很适合,也很简单。但是当情况变多的时候,再使用if语句就显得很复杂、很难以理解了。而这时就可以使用swit...
  • x_2268567875
  • x_2268567875
  • 2017年11月26日 23:24
  • 38

java的条件结构以及流程控制

本文简单介绍了java语言的条件控制语句的一些基本概念和注意事项,特别是在使用if else 以及他们的嵌套使用时要注意if 和else的搭配i;此外,也对三循环控制语句做了相应介绍,以及它们之间的区...
  • RYJ359
  • RYJ359
  • 2017年07月14日 01:38
  • 336

LabVIEW条件结构(有case例子)

条件结构:明确1输入的是什东西,2在什么状态下,3输出什么 在使用选择结构时,控制条件的数据类型必须与图框标识符中的数据类型一致。二者若不匹配,LabVIEW 会报错,图框标识符中字体的颜色将变为红...
  • hmc456
  • hmc456
  • 2017年04月07日 10:46
  • 1515

c#条件结构(三)----switch结构

switch结构也是条件结构的基本结构,其语句为 switch(变量名) { case 常量1:         语句1;        break; case 常量2:      ...
  • luzhonghe1991
  • luzhonghe1991
  • 2015年03月06日 22:12
  • 193

c#条件结构(二)----if语句

if是条件语句的基本语法,具体如下形式 if(表达式) { //语句 } 带有else的情况 if(表达式1) { //语句1 } else//非表达式1的情况下,执行else { //语句2 ...
  • luzhonghe1991
  • luzhonghe1991
  • 2015年03月04日 20:40
  • 192

C#数据结构和算法学习系列六----堆栈、堆栈的实现和应用

堆栈和队列是两种面向表的数据结构,它们都提供了易于理解的抽象。堆栈中的数据只能在表的某一端进行添加和删除操作,反之队列中的数据则在表的一端进行添加操作而在表的另一端进行删除操作。堆栈被广泛用于从表达式...
  • nlx0201
  • nlx0201
  • 2011年09月12日 10:58
  • 2745

cas 入门之八:cas 认证处理器-GENERIC

GENERIC(普通认证) 需要增加cas-server-support-generic-3.5.2.jar 普通认证很简单,就是将你需要认证的用户名、密码对存放在cas 服务端,一种式是直接配置...
  • zhurhyme
  • zhurhyme
  • 2014年06月26日 20:31
  • 3304

17_if语句_单选择_双选择_多选择结构

1.顺序结构 JAVA的基本结构就是顺序结构,它是任何一个算法都离不开的一种基本算法结构。顺序结构在程序流程图中的体现就是用流程线将程序框自上而地连接起来,按顺序执行算法步骤。 2.选择结构if单...
  • qq_21122243
  • qq_21122243
  • 2017年06月03日 15:47
  • 184
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#入门之条件结构
举报原因:
原因补充:

(最多只允许输入30个字)