分类
• 顺序结构:默认的流程结构。按照书写顺序执行每一条语句。
• 选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。
• 循环结构:在给定条件成立的情况下,反复执行某一段代码。
一、选择结构-if
1、简单使用
• if (表达式) 语句1;
• if(count>50) 开班; 上课;
• if(表达式) 语句1; else 语句2;
• f(count>50) 开班; else 不开班;
• if(表达式) { }
• if(count>50) {开班; 布置课室;} else {}
• { }的作用域
• if -else if-else
• if(a==0) else if (a>0) else
• 特点:只有一个括号会被执行
二、选择结构-switch
1、简单使用
• switch(表达式) { case 数值1: break; … default: break;}
• 举例
int a = 10;
switch (a) {
case 0:
printf("这是一个0");
break;
case 5:
printf("这是一个5");
break;
case 10:
printf("这是一个10");
break;
default:
printf("什么也不是");
break;
}
2、if和switch的对比
• 很多情况可以互换
• if用得比较多,比较灵活,switch只能某个单值
三、循环结构-while
1、简单使用
• 连续printf(“俯卧撑”)20次;
• while(表达式) { }
• continue:输出5次休息一下
• break的使用:某次的时候停止循环
• 特点
只有条件成立才会执行循环体
四、循环结构-do while
• 特点:一定会执行一次循环体
• while和do while循环对比
int i=0;
while(i<0){
i++;
}
int i=0;
do{
i++;
} while(i<0);
五、循环结构-for
1、简单实用
• 运行过程
• 初始化语句等可以是多句(把printf放到for的括号中)
2、for循环嵌套
好友列表1
好友1
好友2
好友列表2
好友1
好友2
好友列表3
好友1
好友2
3、陷阱
• 死循环 for(;;);
• for循环体内部变量的作用域
• 作用域混淆
for (int i = 0; i<5; i++) int a = 10;
4、while循环和for循环的比较
• 可以互换
• for循环的变量可以及时回收
六、循环结构-for
1、break
• 使用场合:switch\循环结构
• 循环嵌套下的break
2、continue
• 使用场合:循环结构
• 循环嵌套下的continue