新手小白记录c语言:分支和循环

1.if语句

1.1基本功能

if的功能是进行判断,如果判断的结果是0(假)就不执行,如果判断的是1或非零数(真)就执行

1.2else 

我理解是对if进行分支

 练习:输⼊⼀个年龄,>=18岁就输出:成年,否则就输出:未成年

1.3 分⽀中包含多条语句 

if和else默认只包含一条语句,如果有多条必须加{}

 去掉大括号我直接报错

 

else大括号去掉的话就直接打印错误

 1.4 嵌套if

在 if else 语句中, else 可以与另⼀个 if 语句连⽤,构成多重判断

练习:要求输⼊⼀个整数,判断输⼊的整数是0,还是正数或者负数

练习: 输⼊⼀个整数,如果是正数,再判断是奇数还是偶数,并输出;如果不是正数则输出:⾮正数

 我认为无限套娃其实在程序里面不过是顺序检索,充分利用if和else

练习:输⼊⼀个⼈的年龄
如果年龄<18岁,打印"少年"
如果年龄在18岁⾄44岁打印"⻘年"
如果年龄在45岁⾄59岁打印"中⽼年"
如果年龄在60岁⾄89岁打印"⽼年"
如果90岁及以上打印"⽼寿星"

这里没用到那个if(age>=18 && age<44),我觉得这里事顺序检索也满足

 1.5 悬空else问题

主要是书写问题,我愿称c语言的编译为赛博书法

原来那些空格有时是为了美观,并不是强制要求

铁则:else 总是跟最接近的 if 匹配

2.关系操作符

C语⾔⽤于⽐较的表达式,称为“关系表达式”(relational expression),⾥⾯使⽤的运算符就称为“关系运算符

• > ⼤于运算符
• < ⼩于运算符
• >= ⼤于等于运算符
• <= ⼩于等于运算符
• == 相等运算符(这个容易错,所以用相等一般这样 if(6 ==x ))
• != 不相等运算符

 关系表达式通常返回 0 或 1 ,表⽰真假。
C语⾔中, 0 表⽰假,所有⾮零值表⽰真。⽐如, 20 > 12 返回 1 , 12 > 20 返回 0

从这里开始我就知道为什么计算机要学数学了(已老实)

还有一点,多个关系运算符不宜连⽤

比如(a<x<c)如果a大于x,那a<x的结果就会返回为0,假如c是大于0的数,但是又不满足那个表达式,程序依旧会进行

3. 条件操作符

条件操作符也叫三⽬操作符

exp1 ? exp2 : exp3

如果 exp1 为真, exp2 计算,计算的结果是整个表达式的结果;如果
exp1 为假, exp3 计算,计算的结果是整个表达式的结果

(我简记为真近假远)

练习:使⽤条件表达式实现找两个数中较⼤值

 4. 逻辑操作符:&&,||,!

• ! :逻辑取反运算符(改变单个表达式的真假)。
• && :逻辑与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。

• || :逻辑或运算符,就是或者的意思(两侧⾄少有⼀个表达式为真,则为真,否则为假)。
注:C语⾔中,⾮0表⽰真,0表⽰假

4.1 逻辑取反运算符!

学到这个我觉得我就闻到到高中的味了,诶数学课本闻着味就来了

取反运算符就像下面这个

目前以上就是对这个!的理解,以后见到的场景应该会更多

4.2 逻辑与运算符

一样,先把数学书搬出来

也就是说这个符号(&&就好像打结了一样,交在一起)就像数学里面的交集,要两边同时满足才可以输出真

练习:如果我们说⽉份是3⽉到5⽉,是春天,那使⽤代码怎么体现呢? 

与连续使用符号进行对比 

4.3 逻辑或运算符 

上图

ll就好像并集符号从中间断开了一样

练习: 我们说⼀年中⽉份是12⽉或者1⽉或者2⽉是冬天,那么我们怎么使⽤代码体现呢?

4.4 练习:闰年的判断 

输⼊⼀个年份year,判断year是否是闰年
闰年判断的规则:
1. 能被4整除并且不能被100整除是闰年
2. 能被400整除是闰年

4.5 短路

概念有点多,直接截图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值