#C语言分支和 循环##OJ刷题手撕代码#

分支循环知识点总结(1)

      if语句

if语句的语法形式如下

if ( 表达式 )

 表达式成⽴(为真),则语句执⾏,表达式不成⽴(为假),则语句不执⾏。

在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是0,则语句不执⾏,表达式的结果如果不 是0,则语句执⾏。这个非常重要。

#include <stdio.h>
int main()
{
 int age = 0;
 scanf("%d", &age);
 if(age >= 18) //if 后使⽤{} 控制多条语句-这个块也叫:程序块,或者复合语句 
 {
 printf("成年了\n");
 printf("可以谈恋爱了\n");
 }
 return 0;
}
#include <stdio.h>
int main()
{
 int age = 0;
 scanf("%d", &age);
 if(age >= 18) //if 后使⽤{} 控制多条语句-这个块也叫:程序块,或者复合语句 
}

 printf("成年了\n");
 printf("可以谈恋爱了\n");
 }
 else //else 后使⽤{}控制多条语句-这个块也叫:程序块,或者复合语句 
 {
 printf("未成年\n");
 printf("不可以早恋哦\n");
 }
 return 0;
}

if else语句

非他就是他 的逻辑

if()      else if()  else if()     else()语句

   非他也非他那是他的逻辑

在 if else 语句中, else 可以与另⼀个 if 语句连⽤,构成多重判断。 ⽐如:要求输⼊⼀个整数,判断输⼊的整数是0,还是正数或者负数。请看如下代码:

 

悬空else问题

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

 所以以后写if语句时候就直接把大括号写上就好了,这是好的代码写法习惯~

关系表达式

  关系表达式通常返回 0 或 1 ,表⽰真假。

C语⾔中, 0 表⽰假,所有⾮零值表⽰真。

⽐如, 20 > 12 返回 1 , 12 > 20 返回 0 。关系表达式常⽤于 if 或 while 结构。

注意相等运算符 == 与赋值运算符 = 是两个不⼀样的运算符,不要混淆。有时候,⼼,它可以运行,但很容易出现意料之外的结果。

条件操作符

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

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

写个代码让理解一下

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

 逻辑运算符提供逻辑判断功能,⽤于构建更复杂的表达式,主要有下⾯三个运算符。

双目运算符

• ! :逻辑取反运算符(改变单个表达式的真假)。!=表示不等于

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

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

注:C语⾔中,⾮0表⽰真,0表⽰假,假就结束程序!

代码演示:

        这是一种代码的写法

 下面我们用新学的逻辑运算符简化一下

        

改造后的代码立马变得简化高级一点了,还是推荐大家折磨写,对于新手来说还是有点 B格的哈哈

 switch语句

除了if语句外,C语⾔还提供了switch语句来实现分⽀结构。

switch语句是⼀种特殊形式的if...else结构,⽤于判断条件有多个结果的情况。它把多重的else if改成更易⽤、可读性更好的形式。

 上⾯代码中,根据表达式expression不同的值,执⾏相应的case分⽀。如果找不到对应的值,就执⾏default分⽀。

注意:switch后的expression必须是整型表达式case后的值,必须是整形常量表达式

if 和Switch的区别,用代码来展示,请看VCR

 

上述的代码中,我们要注意的点有:

1.case和后边的数字之间必须有空格

2.每⼀个case语句中的代码执⾏完成后,需要加上break,才能跳出这个switch语句

原因是switch语句也是分⽀效果的,只有在switch语句中使⽤

break才能在跳出switch语句,如果某⼀个case语句的后边没有break语句,代码会继续往下执⾏,有可能执⾏其他case语句中的代码,直到遇到break语句或者switch语句结束

我们发现应该根据实际的情况,来在代码中觉得是否使⽤break,才能正确完成实际的需求。 

 就比如下列这个代码的需求,打印工作日

 default子句

在使用switch语句的时候,我们经常可能遇到⼀种情况,⽐如switch后的表达式中的值⽆法匹配代码中的case语句的时候,这时候要不就不做处理,要不就得在switch语句中加⼊default⼦句。

 在switch语句中case语句和default语句是没有顺序要求的,只要你的顺序是满⾜实际需求的就可以。

结语

大家一定要坚持做一件事,坚持这两个字说起来容易,做起来可真不容易啊

我写博客大家一起见证了我坚持做的一件事,这是我的小幸运,同样也是各位坚持看我博客的见证啊哈哈哈~~~~大家一起加油一起学计算机一起为自己想要的生活追求RMB哈哈

 

 

各位送大家一句话 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值