本文目录:

  • 一、BOOL布尔类型
  • 二、关系运算符
  • 三、逻辑运算符
  • 四、if语句
  • 五、枚举类型
  • 六、switch语句

一、BOOL布尔类型

  • BOOL数据类型,是一种表示非真即假的数据类型,布尔类型的变量只有YES和NO两个值。YES表示表达式结果为真,NO表示表达式结果为假。
  • 在C语言中,认为非0即为真。
  • 分支语句中,经常使用BOOL值做判断,判断执行if语句还是else语句。
  • 循环结构中,也经常使用BOOL值做判断,判断是否要执行循环。

  注意事项:

  • #define YES 1
  • #define NO 0
  • 计算机在识别时,YES就替换成1,NO就替换成0。

二、关系运算符

> >= < <= == !=
  • 主要用于比较运算,比较的结果只有真假两种情况,结果值用BOOL类型变量存储。
  • 注意:判断两个数是否相等,用 ==

三、逻辑运算符

  • 逻辑运算符组成的表达式,结果屙屎非真即假
  • &&(逻辑与):运算符两边表达式同时为真得时候,整个逻辑表达式的结果为真。
  • ||(逻辑或):运算符两边表达式同时为假的时候,整个逻辑表达式的结果为假。
  • !(逻辑非):将表达式的结果取反。

  注意事项:

  • 注意逻辑与和逻辑或的短路现象
  • 注意:
  • &&——一假即假
  • ||——一真即真

  程序的三种结构

  • 顺序结构:顺序执行语句。
  • 分支结构:通过进行一个判断在两个可选的语句序列之间进行选择执行。
  • 循环结构:在满足某个条件的时候反复执行一个语句序列(循环)。

四、if语句

  • 用if语句可以构成分支结构,它根据给的条件进行判定,以决定执行某个分支程序段
  • C语言的if语句有三种基本形式。

  if语句的第一种形式

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

  当条件表达式为真,执行语句1,否则,跳过语句1,继续执行下面的语句。

  注意事项:

if(条件表示式); {
语句1;
}
//注意上述代码表达式括号后面跟了';',导致if语句为空语句,大括号内的语句跟if语句没有关系,无论条件真假都会执行语句1.

  if语句的第二中形式

if (条件表达式) {
语句1;
} else {
语句2;
}
//当条件表达式为真时执行语句1,否则执行语句2.

  if语句的第三种形式

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

  如果条件表达式1为真,执行语句1,如果条件表达式1为假,条件表达式2为真,执⾏语句2,如果条件表达式1与条件表达式2都为假,执行语句3;

  条件运算符

  • 条件表达式 ? 表达式1 : 表达式2
  • 如果条件表达式为真,整个表达式的值为表达式1的值;
  • 如果条件表达式为真,整个表达式的值为表达式1的值;
  • 例如: int c = a > b ? a : b;

五、枚举类型

  • 一组有符号名称的整型常量,⼀一列举所有状态,罗列出所有可能的结果。
  • 枚举属于构造类型。
  • enum 枚举名 {枚举值表};
  • 目的:提⾼高程序的可读性 。
  • 作⽤用:将⼈人能看懂的标识符与计算机能识别的数字建⽴立对应关系。

enum season {
spring = 1,//默认从0开始
summer,
autumn,
winter
};

  

【C语言学习】-02 分支结构的更多相关文章

  1. [C语言入门笔记]分支结构与数组

    分支结构与数组 什么是分支结构? 分支结构是用户或者程序可以选择下一步执行哪个语句 分支结构有哪些? If If Else If Else If Switch 在初学者的学习过程中第一种和第二种比较普 ...

  2. C语言学习笔记--枚举&结构体

    枚举 枚举是一种用户定义的数据类型,它用关键字enum以如下语法格式来声明: enum 枚举类型名字 {名字0,名字1,...,名字n}: 枚举类型名字通常并不真的使用,要用的是大括号里面的名字,因为 ...

  3. Java学习之分支结构---判断语句:if语句和switch语句

    一个if语句包含一个布尔表达式和一条或多条语句,if 语句的用语法如下:if 语句 if(布尔表达式) { //如果布尔表达式为true将执行的语句 },如果布尔表达式的值为 true,则执行 if ...

  4. c语言学习笔记之结构体存储

    今天讲讲结构体存储问题 首先,结构体简单说是对不同类型的封装,一开始我们可能会想结构体在内存中的存储的大小是直接元素的和 例如 我们可能会觉得是 结构体大小=int(4个字节)+ short(2个字节 ...

  5. c语言学习之基础知识点介绍(六):if和switch结构

    本节主要说c语言中的分支结构. c语言中分支结构有两大类:一种是if,一种是switch. 一.if结构 //if结构,语法: //第一种: if(表达式){ //语句块 } //第二种: if(表达 ...

  6. C语言第01次作业--顺序、分支结构

    1.本章学习总结 1.1 思维导图 1.2本章学习体会及代码量学习体会 1.2.1学习体会 本周我学到了很多C语言中基础的结构和语法(见思维导图),能对一些生活中的简单问题对应编写程序解决一些这些简单 ...

  7. c语言第一次作业--顺序、分支结构

    1.1思维导图 1.2.1本周学习体会以及代码量学习体会 1.2.2学习体会     因为在暑假时候没有对c语言进行学习,没太关注一些学习资料,一些教学视频也没看,感觉对c语言是陌生的,刚开课的时候自 ...

  8. c语言博客作业——顺序结构,分支结构

    1.PTA截图 2.本章学习总结 2.1学习内容总结 数据的输入和输出:%d表示输入输出整数 %.lf表示输入浮点数 %.nf表示输出结果保留n位小数 if-else的分支结构可以有限个分类情况进行处 ...

  9. c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)

    1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数 ...

随机推荐

  1. Hbase之尝试使用错误列族获取数据

    import com.google.common.base.Strings; import org.apache.hadoop.conf.Configuration; import org.apach ...

  2. javascript隐式转换详解

    Javascript是web前端开发的必学技术,今天和大家分享的就是javascript的基础知识隐式转换,希望可以帮助大家更好的学习. 转换成布尔类型假 undefined->falSe nu ...

  3. SAM格式 及 比对工具之 samtools 使用方法

    参考资料: SAMtools(官网) SAM Spec v1.4 (SAM格式 说明书) (重要) samtools-1.3.1 使用手册 (SAMtools软件说明书) samtools常用命令详解 ...

  4. jmeter笔记2

    使用jmeter它来完成最常用的三种类型服务器,即 Web 服务器.数据库服务器和消息中间件,压力测试的方法.步骤以及注意事项. 讲到测试,人们脑海中首先浮现的就是针对软件正确性的测试,即常说的功能测 ...

  5. Scrum项目6.0

    sprint演示 1.坚持所有的sprint都结束于演示. 团队的成果得到认可,会感觉很好. 其他人可以了解你的团队在做些什么,并得到重要反馈. 演示是一种社会活动,不同的团队可以在这里相互交流,讨论 ...

  6. (12)odoo各种提前期和时间

    1)Product的提前期    Customer Lead Time(sale_delay):客户提前期,指SO确认到向客户发货的天数,由于销售数量不同该时间也不同,因此,这里是一个平均时间.    ...

  7. Web前端开发面试题

    1. 以下的代码有问题吗?如果有你觉着应该如何修改? for(int i=0; i<list.size(); i++) {  .....  .....  if(...)  {   list.re ...

  8. hdu 1561 The more, The Better (树上背包)

    The more, The Better Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  9. java(课程设计之记事本界面部分代码公布)

    代码:涉及记事本的一些界面......!! /* *java课程设计之记事本(coder @Gxjun) * 编写一个记事本程序 * 要求: * 用图形用户界面实现. * 能实现编辑.保存.另存为.查 ...

  10. Spring Data Jpa配置

    Spring Data JPA提供的接口,也是Spring Data JPA的核心概念: 1:Repository:最顶层的接口,是一个空的接口,目的是为了统一所有Repository的类型,且能让组 ...