控制流:
控制程序运行的流向;
分类:
* 顺序结构 (程序一行一行往下走)
* 分支结构
* 循环结构
分支结构
if语句
第一种姿势:
if(表达式)
一条语句A;
解释:
表达式成立则执行语句A
表达式不成立则不执行语句A
if 和 程序块 结合
if(表达式)
{
多条语句
}
第二种姿势: 多选1
if(表达式1)
一条语句A ;或者 {多条语句}
else if(表达式2)
一条语句B ;或者 {多条语句}
else if(表达式3)
一条语句C ;或者 {多条语句}
else if(表达式4)
一条语句D ;或者 {多条语句}
.....
else
一条语句x;或者 {多条语句}
解释:
判断表达式1,如果成立,则执行语句A ,整个if都结束了
判断表达式1,如果不成立,去判断表达式2 ....
注意 else 可以省略
例子
#include <stdio.h>
int main(void)
{
int a;
scanf("%d",&a);
if(a>100)
printf("......\n");
else
printf("!!!!!!\n");
if(a>1000)
{
printf("......\n");
}else
{
printf("!!!!!!\n");
}
return 0;
}
swich语句
姿势:
switch(表达式)
{
case 选项:
多条语句;
break;
case 选项:
多条语句;
break;
case 选项:
多条语句;
break;
case 选项:
多条语句;
break;
case 选项:
多条语句;
break;
default :
多条语句;
break;
}
解释:
* 选项 只能是 整数(字符)
* 选项值 不能重复
表达式的值是多少,就会去下面选择该值选项,将其下的语句执行
如果没有选项匹配,就执行 default , default 可以省略
循环结构
for循环
* for 循环:
姿势:
for(赋值表达式1;判断表达式3;赋值表达式2)
{
语句A;
}
解释:
* for 循环中的三个表达式都可以省略
当判断表达式3省略之后,代表死循环 for(;;);
* 第一步:执行 赋值表达式1
* 第二步:判断表达式3 的真假
如果是真,则继续往下执行
如果是假,则退出for循环
* 第三步:执行一条语句A
* 第四步:执行赋值表达式2 ,然后再去执行 第二步
例子
打印1到一百
for(i=1;i<=100;i++)
{
printf("%d ",i);
}
while循环
* 姿势:
while(表达式)
{
语句A;
}
解释: 判断表达式 是否成立 ,成立则执行语句A 然后再去判断 表达式 是否成立
如果不成立则 退出 while 循环
例子
死循环一直打印 liangzai
while(1)
{
printf("liangzai");
}
do while
与while()反过来先执行语句再进行判断
do while :
姿势:
do
{
一条语句A;
}
while(表达式);
分析:
一进来先 执行 语句A
再去判断 表达式 是否成立