分支和循环(零基础学习C语言)(一)

作者: 51CTO博文  更新时间:2021-01-04 15:36:59  原文链接


如果表达式为真(表达式的值默认为1),语句执行

如果表达式为假(表达式的值默认为0),语句不执行

顺序 选择 循环

;也是一条语句,不会报错

代码块中的语句可以有多条,但对代码块外面的来说就相当于一条语句

一,分支语句

分支语句对应的是选择结构

1.if语句

if(表达式){语句}

如果表达式为真(表达式的值默认为1),语句执行

如果表达式为假(表达式的值默认为0),什么都不执行

可以有多个if语句

2.if(表达式){语句1}else{语句2}

可以有多个if else语句

如果表达式满足则执行语句1,语句二不执行

如果表达式不满足则执行语句2,语句一不执行

3.if(表达式1){语句1}else if(表达式2){语句2}else{语句3}

如果表达式1成立,则执行语句1语句2语句3都不执行

如果表达式1不成立,则判断表达式2,如果表达式2为真,则执行语句2,语句3不执行

如果表达式1不成立,则判断表达式2,如果表达式2为假,语句2不执行,语句3执行

可以有多个else if语句

可以没有else语句

可以嵌套使用

悬空else的问题

else与离得最近的未匹配的if匹配

注意代码风格

与之相同的

好的代码风格可以增强可读性

判断条件这需要特别注意

=是赋值

==才是判断

常量可以赋值给变量,变量不能赋值给常量,常量也不能赋值给常量

4.switch语句

case必须接整形常量表达式(注意冒号)

用来代替复杂的if语句

break;

运行到break;时会跳出switch语句

当还需添加case时不会忘记添加上面代码中漏掉的break;

简写为:

不是所以的case语句后都需要加break;

这种情况一定不能有多加的break;

default语句(别忘了加break;)在switch语句块中的哪都可以

但是建议放在最后

以后想补充时,比较方便

switch语句中不能有continue;

没有意义

练习题

没遇到break;case语句继续执行

二,循环语句

1.while循环

while(循环条件)

{//执行语句}

如果条件为真执行语句

执行完后再次来到循环条件处,进行判断,若为真则继续执行,若为假,则不在循环

打印1到10,10个数

循环中的break;语句

遇到break;语句将跳出循环

循环中的continue语句

遇到continue语句将直接跳出当前(本次)循环

来到判断条件处,进行判断,若为真,则继续循环,若为假则跳出循环

光标一直在闪动说明程序未结束

例:如果我不想打印5,利用continue语句跳过是一个很好的解决方法

getchar和putchar

end of file--->EOF文件结束标志,并不是输入EOF而是输入键盘中的CTRL键和z键

(即输入^z时)

2.for循环

3.do while循环