if语句、选择语句、判断语句

  • if语句、选择语句、判断语句
  • if语句
  • if...else语句
    • if...else if...else语句
  • if嵌套语句
    • 悬空else
  • switch语句

if语句、选择语句、判断语句

if语句

在C语言中程序把非零和非空的值判断为true,把零和NULL判断为false

if语句的流程图

if语句的语法

if(判断条件)
{条件为true时执行的代码
}

代码示例

int main()
{int score = 60;//实现判断成绩是否合格if (score >= 60){printf("成绩合格");}//当{}中只有一条语句时{}号可以省略if (score >= 60)printf("成绩合格");return 0;
}

if…else语句

if…else语句流程图

if…else语句语法

if(判断条件)
{条件为true时执行的代码
}
else
{条件为false使执行的代码
}

代码示例

int main()
{int score = 60;//实现判断成绩是否合格if (score >= 60){printf("成绩合格");}else {printf("成绩不合格");}//当{}中只有一条语句时{}号可以省略if (score >= 60)printf("成绩合格");elseprintf("成绩不合格");return 0;
}

if…else if…else语句

if…else if…else语句流程图

代码语法

if(判断条件1)
{判断条件为true时执行的代码
}else if(判断条件2)
{当判断条件2上面的判断条件为false,且判断条件为true时执行的代码
}
else
{当上面判断条件都为false是执行的代码
}

代码示例

int main()
{int score = 60;//判断成绩的等级//100-80为A,79-60为B,59-0为Cif (score >= 80 && score<=100){printf("成绩等级为A");}else if(score>=60 && score<=79){printf("成绩等级为B");}else if (score >= 0 && score <= 59){printf("成绩等级为C");}else{printf("你的成绩输入错误");}return 0;
}

if嵌套语句

if嵌套语句流程图

代码语法

if(判断条件1)
{判断条件1为true时执行的代码if(判断条件2){判断条件1和判断条件2同为true时执行的代码}
}
else
{判断条件1和判断条件2同为false时执行的代码
}

代码示例

int main()
{int x = 66;int y = 88;if (x == 66){printf("x == 66");//if语句里面的if语句if (y == 88){printf("x == 66, y == 88");}}else{printf("x != 66, y != 88");}return 0;
}

悬空else

当if语句嵌套和{}里面只有一条语句的时候,{}可以省略,这时格式不对会出现有趣的事情

int main()
{int x = 66;int y = 99;if (x == 66)if (y == 88)printf("x == 66, y == 88");elseprintf("x != 66, y != 88");return 0;
}

执行后的结果为x != 66, y != 88

总结:

此时else不再是跟第一个if进行组合,因为省略了{}所有else会和相离最近的else组合,也就是第二个if组合

所有,我们应该适当的使用{}使代码的逻辑更加清晰

switch语句

switch语句流程图

代码语法

switch(整型表达式)
{case 整型常量表达式1:整型表达式与整型常量表达式1匹配时执行的代码break;case 整型常量表达式2:整型表达式与整型常量表达式2匹配时执行的代码break;case 整型常量表达式3:整型表达式与整型常量表达式3匹配时执行的代码break;default:整型表达式与上面整型常量表达式都不匹配时执行的代码
}

注:

  1. switch()的括号里除了可以放整型表达式还可以放枚举类型
  2. case后面的整型常量表达式必须是与整型表达式相同的类型,且一定是常量
  3. 不是每个case都要加break,不加break会使程序继续往下走执行下一个case
  4. default为可选项,可以不写

代码示例

int main()
{   int day = 7;switch (day) {case 0:printf("今天是");//这里没有加break关键字,会让这里形成穿透,不管case 0有没有匹配成功程序都要经过这里,//也就是不管day的值为多少都会打印 今天是。//break语句的实际效果是把语句列表划分为不同的分支部分case 1:printf("星期一");break;case 2:printf("星期二");break;case 3:printf("星期三");break;case 4:printf("星期四");break;case 5:printf("星期五");break;case 6:printf("星期六");break;case 7:printf("星期七");break;default:printf("数组有误");}return 0;
}

本文出现任何错误,欢迎留言批评指正。

if语句、选择语句、判断语句相关推荐

  1. continue语句只用于循环语句中_Java之循环语句、条件判断语句(三目运算符)、break、continue...

    之前的内容只是让读者可以定义变量,输出变量等基础功能而已.这远远是不够的,今天,我们学习的内容可以帮你开始完善自己想开发的内容,在这之前我们先理解一个概念:一个表达式的返回值是布尔值的表达式称为布尔 ...

  2. oracle中的if条件判断语句,SQL条件判断语句语法

    条件判断语句可以作为程序段的逻辑结构跳转,根据不同条件执行不同的程序段,也可以在单条SQL语句内部使用,根据不同条件进行更新选择取值. 三种数据库条件判断语句都有if和case,每种数据库语法存在些微 ...

  3. mysql sql判断语句,SQL条件判断语句语法

    条件判断语句可以作为程序段的逻辑结构跳转,根据不同条件执行不同的程序段,也可以在单条SQL语句内部使用,根据不同条件进行更新选择取值. 三种数据库条件判断语句都有if和case,每种数据库语法存在些微 ...

  4. python判断语句_python条件判断语句if elif else使用

    假设网站现在有100个充值用户,现在要给充值1000元以上的大客户返现,那么就需要在程序里进行判断.这就用到了条件判断语句. 一.if语句 1.if语句长相: if条件表达式: 满足条件时要做的事情1 ...

  5. MATLAB中的for循环语句与if判断语句的使用

    利用MATLAB的if语句与for语句求解公式: 公式中总计有53个量,如果利用人工计算,虽可解,但其计算量巨大.所以在一直各个值(即公式中等号右边的各个x量)的情况下,希望能够使用MATLAB语句, ...

  6. php if 判断条件语句,PHP条件判断语句

    重要:本文最后更新于2016-05-22 22:54:47,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗. PHP 条件语句 在您编写代码时,经常会希望为不同的决定执行不同的动作.您 ...

  7. mysql 中 条件判断语句if_mysql条件判断语句if的使用

    mysql条件判断语句if的使用:先判断数据库中是否存在是否存在指定值存在就修改不存在就添加. 这里我就用啦mysql存储过程的if语句 DROP  PROCEDURE  IF EXISTS   过程 ...

  8. mysql if查询语句_MySQL if判断语句以及条件查询语句

    一.sql 中if条件的使用 如:查询t_role角色表中是否存在t_user用户表中Joi用户的信息 select distinctrow  *  from   t_user u    left j ...

  9. C#开发Unity游戏教程之判断语句

    C#开发Unity游戏教程之判断语句 游戏执行路径的选择--判断 玩家在游戏时,无时无刻不在通过判断做出选择.例如,正是因为玩家做出的选择不同,才导致游戏朝着不同的剧情发展,因此一个玩家可以对一个游戏 ...

  10. C++学习笔记3[条件判断语句]

    C++学习目录链接: C++学习笔记目录链接(持续更新中) 文章目录 一.条件判断语句 1.判断语句 二.使用条件运算符进行判断 三.switch语句 四.判断语句嵌套 总结 一.条件判断语句 1.判 ...

最新文章

  1. python同步异步_python中Tornado的同步与异步I/O的介绍(附示例)
  2. JavaWeb-SpringBoot_一个类实现腾讯云SDK发送短信
  3. ubuntu 安装 spconv
  4. 从无到有写一个运维APP(三)完结篇
  5. redis 查询缓存_Redis缓存总结:淘汰机制、缓存雪崩、数据不一致....
  6. java 匿名对象有引用,封闭对象的引用通过匿名类java进行转义
  7. linux电脑管理员身份运行,在Ubuntu 20.04 LTS中添加“以管理员身份打开”
  8. oracle 分区表进行shrink操作
  9. win11组策略如何开启自动更新 Windows11组策略开启自动更新的设置方法
  10. KindEditor的简单应用
  11. 虚拟机下修改hosts文件
  12. 【腾讯云】音视频存储管理CVS
  13. 阿拉伯数字 转换 中文大写
  14. 数据增强方法——Back translations(反向翻译)
  15. Office Visio Project 2016下载地址
  16. matplotlib——画布分辨率和尺寸
  17. 植物大战僵尸经典android,植物大战僵尸经典版
  18. 卸下浮躁 回归本心 回归技术
  19. 【集合论】二元关系 ( 特殊关系类型 | 空关系 | 恒等关系 | 全域关系 | 整除关系 | 大小关系 )
  20. 记者讲述iPhone被盗46天后成功找回的经历

热门文章

  1. 位与,位或,位异或运算符的理解
  2. MongoDB 存储图片
  3. ZOJ 3381 Osaisen Choudai !
  4. Servlet中关于Session数据存储遇到的数据转换问题
  5. android 极光 环信,环信、容联云通讯、极光推送和网易云信IM即时通讯功能接入方式_部署方式_企业服务汇...
  6. 服务器上安装anaconda3
  7. [NOI2008]假面舞会
  8. BZOJ1064 NOI2008假面舞会
  9. Python编程求:一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下,反弹,求在第十次落地时,共经过多少米,第十次反弹多高
  10. java全栈系列之JavaSE-编写银行基金收益系统031