打印
[新唐博主]

C语言if语句

[复制链接]
299|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
麻花油条|  楼主 | 2023-4-18 09:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 到目前为止,我们对 if 语句应该已经不陌生了,前边程序已用过多次了,这里我们系统的介绍一下,方便后边的深入学习。if 语句有两个关键字:if 和 else,把这两个关键字翻译一下就是:“如果”和“否则”。if 语句一共有三种格式,我们分别来看。


  if 语句的默认形式

  if语句的一般形式如下:

  if (条件表达式){

  语句 1;

  }

  其执行过程是,if(即如果)条件表达式的值为“真”,则执行语句 1;如果条件表达式的值为“假”,则不执行语句 1。真和假的概念不再赘述,参考第五章。


  这里要提醒大家一点,C 语言一个分号表示一条语句的结束,因此如果 if 后边只有一条执行语句的时候,可以省略大括号,但是如果有多条执行语句的话,必须加上大括号。


  那么现在,我们上节课的语句就很好理解了:



view plaincopy to clipboardprint?
if (sec >= 16){  
    sec = 0;  
}  

    当 sec 的值大于或等于 16 的时候,括号里的值才是“真”,那么就执行 sec=0 这一句,当 sec 的值小于 16 时,那么括号里就为“假”,就不执行这一句。

使用特权

评论回复
沙发
麻花油条|  楼主 | 2023-4-18 09:34 | 只看该作者
if...else 语句



  有些情况下,我们除了要在括号里条件满足时执行相应的语句外,在不满足该条件的时候,也要执行一些另外的语句,这时候就用到了 if...else 语句,它的基本语法形式是:

  if (条件表达式){

  语句 1;

  }else{

  语句 2;

  }

  比如上节课的最后一段程序我们也可以写成:



view plaincopy to clipboardprint?
P0 = LedChar[sec];  
if (sec >= 15){  
    sec = 0;  
}else{  
    Sec++;  
}  



  这个程序大家可以修改下载到单片机里验证一下,程序逻辑大家自己动脑筋分析,注意条件表达式内 16 到 15 的变化,想一下为什么,我就不多解释了。


  if....else if 语句



  if...esle 语句是一个二选一的语句,或者执行 if 分支后的语句,或者执行 else 分支后的语句。还有一种多选一的用法就是 if...else if 语句。他的基本语法格式是:

  if (条件表达式 1){语句 1;}

  else if (条件表达式 2) {语句 2;}

  else if (条件表达式 3) {语句 3;}

  ... ...

  else{语句 n;}


  他的执行过程是:依次判断条件表达式的值,当出现某个值为“真”时,则执行相对应的语句,然后跳出整个 if 的语句块,执行“语句 n”后面的程序;如果所有的表达式都为“假”,则执行 else 分支的“语句 n”后,再执行“语句 n”后边的程序。


  if 语句在 C 语言编程中使用频率很高,用法也不复杂,所以必须要熟练掌握。

使用特权

评论回复
板凳
Jacquetry| | 2023-4-18 23:25 | 只看该作者
if else 和while哪个执行效率高啊?

使用特权

评论回复
地板
七毛钱| | 2023-4-19 11:14 | 只看该作者
把if语句学好感觉表格就没啥能难度了

使用特权

评论回复
5
elephant00| | 2023-4-20 10:10 | 只看该作者
if else 和while的区别在哪里

使用特权

评论回复
6
yiy| | 2023-4-20 11:47 | 只看该作者
书写格式很重要,另外也可以根据需要使用三目的。

使用特权

评论回复
7
OKAKAKO| | 2023-4-20 13:05 | 只看该作者
if语句确实针对大量的逻辑需求各种嵌套,挺简单的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

279

主题

1448

帖子

2

粉丝