⽬录
目录
Attention!!!!!!!!
C语⾔是结构化的程序设计语⾔,这里所谓的结构大致分为三种:顺序结构、选择结构、循环结构。
通常情况下呢,我们常使用if
、
switch
实现分⽀结构,使⽤
for
、
while
、
do while
实现循环结构。
1.if语句
语法结构
if(表达式)
- 语句 1;//表达式成立执行条件
- else
- 语句 2;//表达式不成立执行条件
- //对多条件语句
- if(表达式 1)
- 语句 1;//成立执行表达式1;反之往后继续寻找成立条件
- else if(表达式 2)
- 语句 2;//成立则执行表达式2;反之往后执行
- ......
- ......
- ......
- else
- 语句 n;//前面条件均不满足则执行该条件
注意 :
*在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是0,则语句不执⾏,表达式的结果如果是不是0,则语句执⾏。
*
悬空else问题
如果有多个
if
和
else ,
else
总是跟最接近的
if
匹配。
2. 关系操作符
C 语⾔⽤于⽐较的表达式,称为 “关系表达式”,⾥⾯使⽤的运算符就称为“关系运算符”,主要有六种如下所示:
•
>
⼤于运算符
•
<
⼩于运算符
•
>=
⼤于等于运算符
•
<=
⼩于等于运算符
•
==
相等运算符
•
!=
不相等运算符
相应的作用跟其表面意思相同,在C语言的使用中多加注意即可
注意:
1.
相等运算符
==
与赋值运算符
=
是两个不⼀样的运算符,不要混淆。
2.多个关系运算符不宜连⽤。
3. 条件操作符
条件操作符也叫三⽬操作符,需要接受三个操作数的。
语法结构:
- exp1 ? exp2 : exp3
条件操作符的计算逻辑是:如果 exp1 为真, exp2 计算,计算的结果是整个表达式的结果;如果
exp1
为假,
exp3
计算,计算的结果是整个表达式的结果。
4. 逻辑操作符:&& , || , !
逻辑运算符提供逻辑判断功能,⽤于构建更复杂的表达式,主要有三个运算符。
•
!
:逻辑取反运算符(改变单个表达式的真假)
•
&&
:与运算符,就是并且的意思(两侧的表达式都为真,则为真,否则为假)。
•
||
:或运算符,就是或者的意思(两侧⾄少有⼀个表达式为真,则为真,否则为假)。
5. switch 语句
switch
语句是⼀种特殊形式的
if...else
结构,⽤于判断条件有多个结果的情况。
语法结构
- switch(整形表达式) //先判断其中的整形表达式是什么,然后执行相应的表达式
- {
- case 1:
- 语句1;
- case 2:
- 语句2;
- ......
- ......
- default://如果没有找到相应的表达式则执行该表达式
- 语句 n;
- }
示例如下
# include <stdio.h>int main (){int day = 0 ;scanf ( "%d" , &day);switch (day){case 1 :case 2 :case 3 :case 4 :case 5 :printf ( "weekday \n" );break ;case 6 :case 7 :printf ( "weekend \n" );break ;}return 0 ;}
注意 :
continue是终止本次循环,就是本次循环中continue后边的代码不会再执行,而是直接跳转到while语句的判断部分,进行下一次循环的入口判断。
break,就停止后期的所有的循环,直接终止循环
6. while循环
大致思路:
⾸先上来就是执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语
句,语句执⾏完后再继续判断,是否进⾏下⼀次判断。
语法结构:
- while (表达式)
- 循环语句;
7. for循环
语法结构:
- for(表达式1;表达式2;表达式3)//表达式1⽤于循环变量的初始化表;达式2⽤于循环结束条件的判断;表达式3⽤于循环变量的调整
- {
- 循环语句;
- }
8. do-while 循环
语法结构
- do
- 循环语句;
- while(表达式);
注意:do while 语句中循环体是⾄少执⾏⼀次的。
9. break和continue语句
continue是终止本次循环,就是本次循环中continue后边的代码不会再执行,而是直接跳转到while语句的判断部分,进行下一次循环的入口判断。
break,就停止后期的所有的循环,直接终止循环
10. 循环的嵌套
学到的三种循环往往嵌套在一起更好的能解决问问题。
11. goto语句
goto 语句可以实现在同⼀个函数内跳转到设置好的标号处。
语法结构:
for (...){for (...){for (...){if (disaster)goto error;}}....}error:if(disaster)//处理错误的情况
本来
for
循环想提前退出得使⽤
break
,⼀个
break
只能跳出⼀层
for
循环,如果3层循环嵌套
就得使⽤3个
break
才能跳出循环,所以在这种情况下我们使⽤
goto
语句就会更加的快捷。