【学习笔记】分支结构

知识点

运算符

算数运算符
在这里插入图片描述

  1. 定义:表示数值以及算数表达式之间的关系
  2. 整型:大小
    字符型:ASCII码值大小
  3. 较实型数据的值(了解)
    错误原因:实型数据在计算机中是近似存储的
    判断fabs(x-y)《zero或者fabs(x)《zero
  4. 优先级
    **逻辑运算符**
    逻辑运算符
    在这里插入图片描述

List item

  1. 优先级
    在这里插入图片描述短路计算
    在逻辑表达式的计算过程中,一单能够确定整个表达式的值,就会立刻停止运算
  2. 整形数据可以参加逻辑运算
    整型数据在参与逻辑运算时,根据其值是 0 或非 0,分别当作逻辑值“假”或“真”进行处理。

语句

if语句
1格式:
1
if(表达式)
语句1//条件成立
else
语句2//条件不成立
2
if(表达式)
语句;
2复合语句:当条件(不)成立需要执行多条语句时用{}将其扩起来,称为复合语句
3嵌套
1分支结构可以嵌套多层
2else总是离它最近前面的一个if配对
条件表达式
格式:< 表达式 1> ? < 表达式 2> : < 表达式 3>
若表达式 1 的值为真(非 0),则只计算表达式 2,并将其结果作为整个表达式的值;否则,只计算表达式 3,并将其结果作为整个表达式的值。
switch语句
格式:
switch (表达式){

case 常量表达式1: 语句组1; [break;]

case 常量表达式2: 语句组2; [break;]

case 常量表达式n: 语句组n; [break;]

[default: 语句组n+1]
}//表示表达式与所有常量表达式的值都不匹配,那就执行其后面的语句组。
如果不需要执行任何语句,可省。
规则:先计算表达式的值,若表达式的值与常量中的值相等,就开始进入相应的case后面的语句组执行,遇到后续的case也不再进行判断(默认匹配),直至遇到break语句或switch语句结束。

注意:
1switch 后面的表达式,取值只能是离散型。case 后面的常量表达式,其值类型要与 switch 后面表达式的类型一致。

2任意两个 case 后的表达式值必须各不相同,否则将引起歧义。

3语句组可以是一条语句,也可以是一个复合语句。
随机函数
/#include
#include
#include

using namespace std;

int main(){

int a,b,c;

srand(time(0));
int x = 1, y = 9;

a = x + rand() % (y - x + 1);
b = x + rand() % (y - x + 1);

x = 1;
y = 4;

c = x + rand() % (y - x + 1);
switch©{
case 1: printf("%d+%d=%d\n", a, b, a + b); break;

case 2: printf("%d-%d=%d\n", a, b, a - b); break;

case 3: printf("%d*%d=%d\n", a, b, a * b); break;

case 4: printf("%d/%d=%d\n", a, b, a / b); break;
}

return 0;

}

收获

1任何表达式都有值
2区分“==”和“=”
3使用if语句时养成使用{},增大调通几率
4C++字符可以根据ASCII码值大小比较大小

感悟

学习c++是在学习以计算机的视角解决问题,不能得过且过,学习要细致,尽量复刻计算机的运算调程序。在能力不足的现在,繁琐但简单的思路,可能更容易解决问题,不要好高骛远。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值