当你学会了最简单的程序结构,顺序结构之后,会发现顺序结构的程序中,程序知伤而效,无条件依次执行,不需要做任何判断。 但在现实世界中,往往需要根据不同的条件做出选择,比如说走到分叉路口时,需要根据实际的目的地,在各条分叉路中做出选择。 这节课我们就来学习十余元的选择结构程序设计,主要包括衣服语句比较运算、逻辑运算、条件运算,还有十微企语句。 现在我们开始介绍一副语句,一副语句有三种形式,第一种最简单,没有 airs 之句,只做判断,决定要不要执行语句一。第二种有 airs 之句,根据判定结果,在语句一和语句二中二选一执行。第三种是多 分字判断,自上而下顺序判定,满足条件时执行相应的语句,并且不再做后面的判定。下面我们开始来扣定,判断一个成绩是否及格。首先我们定一个分数变量,比如说是六十分, 如果小于六十分的话,则为不及格,需要补考, 把它保存一下,然后编译,然后运行, 什么都没有输出,说明那个分数小于六十的判断没有符合。现在我们把改成五十分,再保存再编译,然后再运行,输出了 不及格,需要补考,说明依附判断的条件满足了。第二种形式,我们加上一个 s 指距,所有小于六十分的要补考,其他的情况,这都不需要补考, 保存一下再编译,然后运行,还是不及格。我们现在把五十分改成八十分再保存,编译,在运行, 输出了,不需要补考,执行到了 a 二十分之的代码,在这个程序中,我们使用了一个比较运算符,小于后,在 c 元中有六个比较运算符,也叫关系运算符。比较运算符的优限级低于算数运算符 高于复制运胜服,前面四个比较运胜服的优先级又高于后面两个,我们来扣点验证一下。 emma 拷贝过来我就不敲了,然后保存编译 在运行可以看出它的输出。我们把第一个表达式来分析一下, 这个是 c 大于 a 加 b, 那么是先算加号,因为算数越上浮的余线级更高,那么 a 加 b 就是三, c 等于三,显然他三不大于三,于是孵出了零。那其他几个大家可以自行分析一下。在这个程序中,我们使用的关系表 式就是用关系运算符将两个数值或者数值表达式连起来的式子。关系表达式的值是一个逻辑值,真或者假。在 c 语言中,一代表真,零代表假。 下面我们来介绍一下逻辑运算。 c 元中提供的三个逻辑运算符。于霍飞, 当两个值同时为真,实与操作的值为真,当两个值中至少一个为真时,或操作的值为真。非操作只接受一个值,对其逻辑值取反。三个运算符的真值表,无图所思。 逻辑运算符与操作数连接的式指就是逻辑表达式。在逻辑运算中,零值代表假,其他所有非零值都代表真。来 cody 验证一下,代码还是复制过来吧。保存编译, 在月行可以看到输出跟我们预期是一致。 在词语原理,要实现二选一的操作,还有一个方便的办法,使用条件表达式。条件表达式里有两个符号,问号与冒号,问号前为判定逻辑,冒号左右两边分别为逻辑判定为真和假时要执行的表达。四、 来, cody 演示一下,我们求两个变量的较大者,先定义两个变量 a 和 b, 再定义一个较大值的变量,取 a 和 b 的较大者,当 a、 w、 b 时取 a, 否则取 b, 然后打印出 max 的值,保存编译一下再运行,输出是二,这达到了与衣服语句相同的效果。当代码却简洁许多。 要实现多分支选择结构,我们还可以使用 switch 语句,比用衣服语句结构更清晰,执行效率也更高。因为 switch 语句是直接挑转分制,而不像衣服判断那样需要至上而下依次判断,直到匹配到符合挑战的分制 来。 cody 演示一下,我们想把代码复制过来,不,当代码是用来区分不同的等级的层级区间保存 编一下,在运行, 我们看到 a 等级,它就处于九十到一百分的区间。 break 语句让程序跳出 switch 分制,若不写 break, 程序会继续往下则行,直到遇到 break。 需要注意,出血的很容易漏掉必要的 break, 导致分支逻辑判断混乱。一般在多个条件需要执行同一分支时,不用写 break。 比如说这个曾经判断的程序,我们还要连小写字母一起判断的话,就可以这样写, 那小写字母和大写字母执行同样的分制。 map, 比如说我们现在小写的 d 啊,乘以它连译预警可以看到 d 是在六十到七十分的区间。 有两点要说明一下,一、 switch 的括号里面的表达式只能是整形值。 二、对于 switch 语句的最后一个分制,不管有没有 break, 执行完都会跳出去,这里该不该省略 break 有不同的意见,我个人认为不要省略,除了保持代码风格的一致性。理石,培养严谨的编程习惯, 现在你已经学会了十亿元选择结构。程序设计的基础就是若想看文字版,可以移步到与本号重名的公众号,那里有文字版的内容,本期视频就到这里下课。
粉丝9203获赞2.1万

一直在浩瀚的一瞬间, 一直在浩瀚的一瞬间。

今天我们来讨论什么是指真,什么是指真呢?有个网友说了啊,这有啥可纠结的, c 语言创始人说了,指真就是变量,用于存放其他变量的地址, 还给出了截图,这就是他给出的截图,还真是一个指真,是包含了一个变量的地址的变量。还真是这么说的,好家伙,还真是啊, 但问题在于,在于什么呢?我们来看一个例子,这是一个声明,声明了一个函数 f, 函数 f 返回一个指针,对不对?这是很清楚的啊,懂 c 语言的人都知道,函数 f 返回一个指数,因为指数是变量,所以函数 f 返回一个变量,太棒了,真完美! 还有人说纸质是一个地址,问题在于,你能只用地址来访问对象吗?这里所谓的对象就是你们平时所说的变量, 你能只用地址来访问对象吗?不能,因为你只知道对象的地址,而不知道对象的数据类型, 不知道该以何种类型来写入或者读出数据,毕竟不同类型的数据是以不同的比特训练存在于对象中的。 再说了,在这样一个声明里, p 是 指真, 如果职称是地址,那么 p 就是 一个地址,真是太棒了,太完美了, p 居然是一个地址。 最后我们来总结一下我们后面的说法,还有别的说法,比如说职称 是一个整数或者时针是一种类型啊,各种各样的说法都有,我们就不展开了,直接总结一下。第一点,最初时针是作为数据类型引入 c 语言的, 这一点需要清楚。第二,取决于上下文,时针可能是时针类型, 时针变量或者时针值的简称啊,都有可能是这三种说法的简称。