C语言学习(三)
结构语句
一、几个常用的分支循环
- if-else循环语句:
if(表达式)
{
执行代码块1;
}
else
{
执行代码块2;
}
过程:满足表达式的值执行代码块1,否则执行代码块2. - while循环语句 :
while(表达式)
{
执行代码块
}
过程:满足表达式的条件则执行代码块,否则判定为假弹出。
★注意:
①while循环要在循环体中改变循环变量的值,不然会出现死循环;
②while语句中的表达式一般是关系表达式或逻辑表达式;
③{}不能忘,包起语句组成复合语句 - do-while循环语句:
do
{
执行代码块
}while(表达式);
过程:先执行循环中的执行代码块再进行判断表达式过程,若为真则继续循环,若为假,终止循环。
★注意:
do-while循环中至少执行一次循环语句!!!!!
例如这里while条件无法达到的情况下都会循环执行一次输出:第一次输出。 - for循环语句:
这是我们今后不管什么语言中最为常用的循环,相对前面的语言而言它更为简洁!
for(表达式1;表达式2;表达式3)
{
执行代码块
}
过程:第一步先执行表达式1进行初始化;第二步判断表达式2,若为真,则执行for内代码块继续循环,若为假终止循环退出;第三部执行表达式3;输出后重回for起始循环。★注意:
①for循环中表达式1、2、3都可缺省,但是;绝对不能少;
②表达式1缺,不对循环变量赋初值;
③表达式2、3缺,循环执行死循环;
④表达式2一般是关系表达式或逻辑表达式;
⑤循环变量的值一定要在for循环前定义!!!! - 循环结构之多重循环:
在功能需求上,往往一个循环满足不了,比如:循环用一个“*”输出,得到一下图形
上面这个例子显然我们用一个循环不是太容易实现,这个时候我们就要用到多重循环,多重循环就是在循环结构的循环体中又出现循环结构。
在实际开发中一般最多用到三层重循环。因为循环层数越多,运行时间越长,程序越复杂,所以一般用2-3层多重循环就可以了。另外不同循环之间也是可以嵌套的。多重循环在执行的过程中,外层循环为父循环,内层循环为子循环,父循环一次,子循环需要全部执行完,直到跳出循环。父循环再进入下一次,子循环继续执行,然后。。。。上面图用多重循环实现代码:
6.break语句:
在我们生活中,可能会由于某种原因需要中断当前的事情,并且不能继续进行下去。如:小明今天篮球训练,需要运球10次,当运到5次的时候休息无法进行循环,这个时候就要停止训练。将运球看成是一个循环,那么循环5次的时候,需要中断不继续训练。在C语言中,可以使用break语句进行该操作,代码实现如下:★注意:
①在没有循环结构的情况下,break不能用在单独的if-else语句中;
②在多层循环中,一个break语句只跳出当前循环 - continue语句:
在我们生活中,可能会由于某中原因需要中断当前的事情,过一会还能继续进行。如:小明今天篮球训练,需要运球10次,当运到5次的时候,需要休息后回来继续训练。将运球看成是一个循环,那么循环5次的时候,需要中断后继续训练。在C语言中,可以使用continue语句进行该操作,代码实现如下:
continue是结束本次循环,break是跳出整个循环;continue作用是结束本次循环开始执行下一次循环。 - switch语句:
C语言还提供了一种用于多分支选择的switch语句,它的用处也不少。switch语句如下:
执行顺序如下:
代码:
★注意:
①在case后的各常量表达式的值不能相同,否则会出现错误;
②在case子句后如果没有break;会一直往后执行一直到遇到break;才会跳出switch语句;
③switch后面的表达式语句只能是整型或者字符类型;
④在case后,允许有多个语句,可以不用{}括起来;
⑤各case和default子句的先后顺序可以变动,而不会影响程序执行结果;
⑥default子句可以省略不用 - goto语句:
大家平时出门的时候都会有个目的地,我今天要去哪哪哪,然后就去了。因此,我们需要goto!and goto!goto 语句的使用格式为:
goto 语句标号;
例如:用goto语句和if语句构成循环,当i等于3时利用goto语句跳出循环