分支
if 语句
语法形式:表达式为真,执行语句,为假则不执行
if (表达式) 语句;if else语句
语法形式:表达式为真,执行语句1,否则执行语句2
if (表达式) 语句1; else 语句2;多条语句
if和else语句中默认只控制一条语句,若要执行多条语句,用{ }括起来即可
if (表达式) { scanf("..."); printf("..."); } else { printf("..."); }多个分支
若结果不止两种,运用嵌套if,else与另一个if连用,构成多重判断
语法形式:
if (表达式) 语句1; else if (表达式) 语句2; else if (表达式) 语句3; else 语句4;switch语句
switch语句是一种特殊的if else 结构,用于判断多种结果的情况
形式为:
switch (表达式) { case 1 : 语句1; break ; case 2 : 语句2; break ; ...... default: 语句3; }注意:
1、switch后面的表达式必须是整型表达式
2、case和后面的值必须是整型常量,且与其之间必须有空格
3、每一个case语句中的代码执行完之后,需要加上break,才能跳出这个switch语句
4、default 的意义:当表达式的值不匹配任何一个case语句的时候,就会执行default语句,default通常放在最后
循环
while循环
while (表达式) 语句;形式与if语句相似,表达式为真,执行语句;但while语句可循环执行,而if语句只能执行一次
循环的实现:表达式含判断,语句中有调整,调整到表达式为假,循环停止
for循环
for (表达式1;表达式2;表达式3) 语句;三个表达式分别为循环变量的初始化,结束的条件判断,变量的调整
for循环与while循环的实现原理相同,构成相同,只是形式不同,
do while循环
do 语句; while(表达式);循环的实现:先执行语句,表达式判断,为真则进行下一次,为假则停止
break与contine语句
break
跳出循环,不再执行
continue
跳过本次循环中continue后面的代码
由于for和while循环形式不同,因此continue再两者中有差异
int i=1; while(i<=10) { if(i==5) { continue; printf("%d",i); i=i+1; } }while循环里,i=5时,continue到i<=10,未执行printf和i=i+1,回到判断始终成立让其陷入死循环;
for(int i=1;i<=10;i++) { if(i==5) continue; printf("%d",i); }for循环里,i=5s时,continue到i++,未执行printf,使打印的结果跳过5