流程控制【第一个重点】
程序代码执行的顺序
-
顺序执行
-
选择执行(具体见 分支用法)
定义: 某些代码可能执行,也可能不执行,有选择地执行某些代码
分类:
if 、 switch、 break、 continue
- 循环执行 (具体见 循环用法)
定义:某些代码被重复执行
分类:
for、 while、 do...while
流程控制举例:【要能看懂】
1、
# include <stdio.h>
int main (void)
{
int x=1,y=0,a=0,b=0;
switch (x) //第一个 switch
{
case 1:
switch (y) //第二个switch
{
case 0:
a++;
break; //终止的是第二个switch
case 1:
b++;
break;
}
b = 100;
break;
case 2:
a++;
b++;
break;
}
printf("%d %d",a,b);
return 0;
}
2、电梯程序
# include <stdio.h>
int main (void)
{
int val;
scanf("%d",&val);
switch (val)
{
case 1:
printf("1层开!\n");
break;
case 2:
printf("2层开!\n");
break;
case 3:
printf("3层开!\n");
break;
default:
printf("没有盖到这一层!\n");
break;
}
return 0;
}
3、折半查找的子程序
while (flag)
{
flag = 0;
for (j=0; j<n-i; ++j)
{
if (a[j] > a[j+1])
{
temp = a[j];
a[j] = a[j+1];
continue; //会跳去执行 ++j
a[j+1] = temp;
flag = 1;
break; //终止的是 for 循环,转去执行第二个 break
}
}
break; // 会跳出 while 循环
++i
}