C语言学习笔记4

·if语句

(1)if

if语句的语法形式如下:

if(表达式)
  语句

表达式成立(为真),则语句执行,表达式不成立(为假),则语句不执行
在C语言中,0为假,非0表示真,也就是表达式的结果如果是0,则语句不执行,表达式的结果如果不是0,则语句执行。

例子:输入一个整数,判断是否为奇数

(2)else

例子:输⼊⼀个整数,判断是否为奇数,如果是奇数打印是奇数,否则打印偶数。

(3)嵌套if

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

上⾯的代码中蓝色背景的代码也是嵌套在 if 语句中的,构成了嵌套的 if 语句。

(4)悬空else问题

如果有多个 if 和 else ,可以记住这样⼀条规则, else 总是跟最接近的 if 匹配

运行以下代码

运⾏代码,输出的结果是:啥都不输出。

原因:else 是和第⼆个 if进行匹配的,这样后边的 if...else 语句是嵌套在第⼀个 if 语句中的,如果第⼀个 if 语句就不成立,嵌套 if 和 else 就没机会执行了,最终啥都不打印。

如果我们希望else确实和第⼀个if匹配,可以这样修改代码:

·关系操作符

C语⾔⽤于⽐较的表达式,称为“关系表达式,⾥⾯使⽤的运算符就称为“关系运算符”,主要有下⾯6个。

• >  大于运算符 
• <  小于运算符 
• >=  大于等于运算符 
• <=  小于等于运算符 
• ==  相等运算符 
• !=  不相等运算符 

关系表达式常⽤于 if 或 while 结构。

重点:多个关系运算符不宜连用

i < j < k

上面示例中,连续使⽤两个小于运算符。这是合法表达式,不会报错,但是通常达不到想要的结果,即不是保证变量 j 的值在 i 和 k 之间。因为关系运算符是从左到右计算,所以实际执⾏的是下⾯的表达式。

(i < j) < k

上面式⼦中, i < j 返回 0 或 1 ,所以最终是 0 或 1 与变量 k 进行比较。如果想要判断变量 j的值是否在 i 和 k 之间,应该使⽤下面的写法。

i < j && j < k

·条件操作符

条件操作符也叫三目操作符,需要接受三个操作数的,形式如下:

exp1 ? exp2 : exp3

条件操作符的计算逻辑是:如果 exp1 为真, exp2  计算,计算的结果是整个表达式的结果;如果
exp1 为假, exp3  计算,计算的结果是整个表达式的结果。 

·逻辑操作符

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值