当前位置 博文首页 > CW_qian的博客:7月20日C语言基础控制流
什么是控制流?控制流的作用
有时候我们运行程序时候,程序工作过程需要某些判断
程序设计分成顺序结构,选择结构,循环结构
二路分支(if语句不能使用break否则报错)
// if 语句
if(a%2?== 0)
{
????printf("a是偶数\n");
}
//if-else 语句
if(a%2?== 0)
{
????printf("a是偶数\n");
}
else
{
????printf("a是奇数\n");
}
多路分支
switch(n)
{
case?1:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //case? 2...6;? 表示2<n<6
????printf("one\n");
????break;
case?2:
????printf("two\n");
????break;
??
case?3:
????printf("three\n");
????break;
??
default:
????printf("其他数字\n");
}
while与 do…while循环
while循环
while循环:入口判断
// 循环输出一系列整数,直到100为止
int?a;
scanf("%d", &a);
while(a <= 100)
{
????printf("%d\n", a);
????a++;
}
do-while 循环
do-while循环:出口判断
// 循环输出一系列整数,直到100为止
int?a;
scanf("%d", &a);
do
{
????printf("%d\n", a);
????a++;
}while(a <= 100);
for循环
// 循环输出一系列整数,直到100为止
int?a;
for(a=30; a<=100; a++)
{
????printf("%d\n", a);
}
while与for的区别:
?? ?一般来说while()更加注重循环条件,for()更加注重循环次数,如果有确定的循环次数
?? ?请多用for()循环
break与continue
switch(n)
{
case?1:
????printf("one\n");
????break; ?// 跳出 switch 语句
case?2:
????printf("two\n");
????break; ???????
}
while(1)
{
????int?n = scanf("%d", &a);
????if(n == 0)
????????break; // 跳出当层 while 循环体
}
for(int?i=1; i<=100; i++)
{
????if(i%7?== 0)
????????continue; // 跳过所有能被7整除的数
?????
????printf("%d\n", i); ??????
}
goto语句
int?main()
{
????printf("%d\n", __LINE__); // 打印第3行
????
????// 无条件跳转到label处
????goto?label;
????printf("%d\n", __LINE__); // 打印第7行,此处被略过
label: ?
????printf("%d\n", __LINE__); // 打印第9行
}