ITPub博客

首页 > IT职业 > IT职场 > 物联网学习教程——if语句2

物联网学习教程——if语句2

原创 IT职场 作者:千锋教育官方 时间:2019-09-09 16:07:37 0 删除 编辑

接着上一篇继续:

3. 条件运算符

 

格式:     表达式1?表达式2∶表达式3

功能:     判断表达式1 的值,如果成立就执行表

            达式2 ,否则就执行表达式 3

使用场合:若在if语句中,当被判别的表达式的

            值为“真”或“假” 时,都执行一个赋值语

            句且向同一个变量赋值时,可以用一个

            条件运算符来处理。

例:

          if (a>b) max= a;

     else max=b;

 

当a>b 时将 a 的值赋给 max ,当 a ≤ b 时将 b 的值赋给 max ,

可以看到无论a>b 是否满足,都是向同一个变量赋值。

可以用下面的条件运算符来处理:

 

      max=(a>b)?a∶b;

说明:

(1) 条件运算符的执行顺序:先求解表达式1,若为非0(真)

     则求解表达式2,此时表达式2的值就作为整个条件表达式

     的值。若表达式1的值为0(假),则求解表达式3,表达

     式3的值就是整个条件表达式的值。

(2) 条件运算符优先级高于赋值运算符 ,低于关系运算符

     和算术运算符。

(3) 条件运算符的结合方向为“自右至左”。

(4) “表达式 2 ”和“表达式 3 ”不仅可以是数值表达式,还可以

     是赋值表达式或函数表达式。

(5) 条件表达式中,表达式1的类型可以与表达式2和表达

     式3的类型不同。

例: 输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。
 
#include <stdio.h>
 void main ( )                 
 { char ch;
   scanf("%c",& ch);
   ch=(ch>='A'&&  ch<='Z')?(ch+32):ch; ( 如果字符变量ch 的值为大写字母,则条件表达式的值为(ch+32),即相应的小写字母。如果 ch 的值不是大写字母,则条件表达式的值为ch,即不进行转换。 )  
   printf("%c\n",ch);
  }

 

 


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69914734/viewspace-2656487/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
千锋IT职业教育——做真实的自己 用良心做教育

注册时间:2019-03-28

  • 博文量
    140
  • 访问量
    92335