控制结构可以分为条件分支控制和循环控制。
条件分支结构
if型:
单if型:
int x=10;
if(x==10){
printf("true");
}
if-else型:
int x=10;
if(x==10){
printf("true");
}
else{
printf("false");
}
if-else-else if型
int x=10;
if(x<=1){
printf("x<=1");
}
else if(x<=4){
printf("x>=1&&x<=4");
}
else if(x<=7){
printf("x>=4&&x<=7");
}
else{
printf("x>7");
}
(个人感觉单独用if就能实现这种else if型的,没必要强制使用)
switch型:switch-case-default
多重条件控制,要注意break的使用,如果你不用break,也不会报错,但是程序会顺着每一个case都执行一遍(包括default)
int x;//x可以被赋值
scanf("%d",&x);
switch(x){
case 1:
printf("x=1");
break;
case 2:
printf("x=2");
break;
case 3:
printf("x=3");
break;
default:
printf("x=%d",x);
break;//此处break可加可不加
}
补充:default是什么意思?是不执行,默认的意思,放在程序里可以理解为如果前面的判断都不执行,则默认执行default选项。
循环结构:
while型
while
格式:
while(判断条件){
执行语句
终止条件的语句(一般可以用自增自减运算符或者break强制停止,不然循环不会停止,也就是死循环)
}
do-while
do{
执行语句
}
while(判断条件)
//如果do内的语句执行后,while中条件判断为真,终止do循环,因此,这种循环至少会执行一次。
for循环
for(int i=0;i<10;i++){
printf("a/n");
}
//指花括号里面的执行语句会执行10次。
注:for循环同样可以把int i=0这一部分提到外面,如:
int i=0;
for(;i<10;i++){
printf("a\n");
}
如何确定使用哪种循环结构?
for循环适用于能确定好循环次数的,while循环适用于仅知道循环终止条件。
多层循环(嵌套)
一般还是for循环多层嵌套多一些,比如
for(int i=0;i<10;i++){
for(int i=0;j<i;j++){
printf("a");
}
}