Skip to content

流程控制

目录


  • for&while&if&switch

WARNING

注意,在 C 语言的标准中 true 和 false 是没有定义的,解决方案:

  • 在程序中定义:#define true 1#define false 0
  • 使用#include <stdbool.h>,这个头文件中定义了truefalse
  • 使用 10 代替

循环&选择语句

三目条件运算符

c
<条件表达式>?<表达式1>:<表达式2>;//条件为真运行表达式1,否则运行2
  • 不能用true代替条件表达式

switch

  • switch 后面括号里和 case 后面括号里值相同就打开
c
switch(表达式/变量){
    case (常量):语句1; break;
    case (常量):语句2; break;
	……
	default:
}

switch case 加范围例子

c
#include <stdio.h>

int main()
{
    int a = 1;
    switch (1)
    {
    // 使用C编译这里会报错,但程序可以正确运行
    case (a > 1):
        printf("a>1");
        break;
    default:
        printf("a<=1");
    }
    // 暂停
    getchar();
    return 0;
}

for

在 for 循环里定义的变量在外面不能用

c
for(;a<10;a++,b++)//多个语句尝试(用逗号合法)
	cout<<a<<" "<<b<<endl;

while

  • 格式略
  • 其他用法
c
next/prev_permutation(start,end)
    //用于while之类语句中数组全排列,next/prev返回下一个/上一个排列(start,end)表示开始和结束的元素,若无下一个/上一个排列返		回false,否则返回true
do{}while(next/prev_permutation(start,end))

跳转与继续

  • goto:跳转到指定标签
c
#include <stdio.h>

int main()
{
    emm: // 标签
    printf("Hello, World!\n");
    goto emm;
    getchar();// 暂停
    return 0;
}
  • break:用于switch语句和循环语句中,跳出当前switch语句或循环语句
  • continue:只用于循环语句中,终止本次循环,继续下一次循环
c
for (int i = 0; i < 10; i++)
{
    if (i == 5)
        continue;
    printf("%d\n", i);
}

Copyright © 2022 田园幻想乡 浙ICP备2021038778号-1