凌阳教育专注嵌入式教育14年,良心教育,有担当,有诚信,值得信赖的教育品牌,欢迎访问官网http://www.sunplusedu.com

?:运算符

上一篇 / 下一篇  2016-04-12 16:09:51

C语言有一个特殊的运算符,岁两路判断很有用。该运算符是?和:的组合,需要有三个操作数。该运算符经常称为条件运算符。该条件运算符使用的一般形式如下:

条件表达式?表达式1:表达式2

首先计算条件表达式,如果其结果为非零,就计算表达式1,且表达式1的结果作为整个表达式的值返回。否则,就计算表达式2,且其结果作为整个表达式的值返回。例如:

if(x=0)

       flag=0;

else

       flag=1;

可以写成:

flag=(x<0)?0:1

条件运算符也可以嵌套,用来计算更复杂的赋值判断。例如,让我们来看看某家用产品营销人员的周薪。如果x为某营销人员一周所卖的产品数量,那么他的周薪计算如下:

salary=4x+100    x<40

300       400

4.5x+150  x>40

这个复杂的灯饰可以写成:

salary=(x!=40)?((x<40)?(4*x+100):(4.5*x+150)):300;

当使用条件运算符时,代码更简洁,而且可能也更高效。但是,可读性更差。当需要嵌套不止一个条件运算符时,最好使用if语句。

编写多路选择语句的一些建议

请特别注意复杂的多路选择语句,应能让读者容易理解该语句的逻辑。下面一些建议有助于提供语句的可读性,方便语句的维护。

应避免使用复合的负逻辑语句,只要有可能,就使用正逻辑语句。

尽量使用逻辑表达式简单。着可以利用嵌套的if语句来实现。

应首先编写常见的或期望的条件。

应首先使用最可能的条件。着可以省去不必要的测试,从而提高程序的效率。

选择if语句还是switch语句是个人的偏好。当当可选路径有3-10条时,最好使用switch语句。

应适当地采用代码缩排。

应养成在switch语句中使用default子句的习惯。

应把具有类似动作的case归为一组。

凌阳教育,全国唯一一家原厂式嵌入式培训机构,专业从事嵌入式人才培训13年,最近新开课程信息安全工程师培训,想了解更多嵌入式资料下载或者是凌阳教育的动态,请访问凌阳教育官网www.sunplusedu.com

 


TAG: C语言 c语言 表达式

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar
博评网