嵌入式C语言之流程控制语句

一、程序的执行顺序

1、自上向下 , 自左向右 执行

二、流程控制语句作用

1、控制程序的执行顺序   

--控制条件     -- 执行内容

三、流程控制语句的分类

1、选择结构--2 条
2、循环结构--3 条
3、控制语句--4 条
四、选择结构

1、if选择结构

(1)如果小刚的考试成绩大于90分,给予奖励

①基本if选择结构 

    --if(所需条件){需要执行的代码}

代码实现:

#include<stdio.h>
int main()
{
    printf("输入成绩:");
    int score=0;
    scanf("%d",&score);
    if(score>90)
    {
        printf("给予奖励\n");
    }
   return 0;

}

(2)如果小明的考试成绩大于90分,给予奖励,否则惩罚。

①if  else 选择结构

--  if(条件表达式){为真-代码1}else{为假-代码2};

代码实现:

#include<stdio.h>
int main()
{
    printf("输入成绩:");
    int score=0;
    scanf("%d",&score);
    if(score>90)
    {
        printf("给予奖励\n");
    }
    else 
    printf("惩罚\n");
    return 0;
    
}

(3)根据小名的考试成绩进行评定,并给予不同的奖励
 评定规则:成绩大于90给予100,成绩大于80给予50,成绩大于60给予10,成绩小于60个给予一套试卷。

①多重if选择结构    --else if  选择机构

---  if(条件表达式1){真-代码1}else if(条件表达式2){真-代码2}else if(条件表达式3){真-代码3}else {假-代码4}

代码实现:

#include<stdio.h>
int main()
{
    printf("输入成绩:");
    int score=0;
    scanf("%d",&score);
    if(score>90)
    {
        printf("给予100\n");
    }
    else if(score>80)
    {
        printf("给予50\n");
    }
    else if(score>60)
    {
        printf("给予10\n");
    }
    else
    {
        printf("给予一套试卷\n");
    }
    return 0;
}

(3)if 选择语句的嵌套使用

输入一个成绩,大于90时进行评定,小于90视为淘汰,成绩大于90三等奖,大于95二等奖,大于98一等奖,等于100特等奖。

代码实现:

#include<stdio.h>
int main()
{
    printf("输入成绩:");
    int a=0;
    scanf("%d",&a);
    if(a>90)
    {
       if(a==100)
        {
            printf("特等奖\n");

        }         

            if(a>98)
        {
            printf("一等奖\n"); 
        }
           else if(a>95)
        {
            printf("二等奖\n");
        }
            else 
        {
            printf("三等奖\n");
        }
    }
          else
         {
            printf("淘汰\n");
          }
    return 0;
}

(4)if选择结构注意事项

①三种if选择结构可以嵌套使用

②当if选择结构的{}内只有一句代码时,{}可以省略------不建议

③if选择结构大多适用于区间范围的判断

2、switch选择结构

(1)根据输入的数字,显示对应的星期几。

语法:

switch(变量)  --该变量目前仅支持int类型

{

case n: -----n,变量可能会输入的值

        代码 1;

        break;  ------break-中途跳出switch,不再进行匹配

case n:      ----多个case值,不能重复出现

        代码2;

        break;

...........需要几个便量重复 case语句

default:         --兜底匹配-----所有的case无法被匹配,会进入default  

    (兜底输出内容)代码;

break;

}

代码实现:

#include<stdio.h>
int main()
{
    printf("输入一个数(1-7):");
    int n=0;
    scanf("%d",&n);
    switch(n)
    {
        case 1:
            printf("星期一\n");
            break;
        case 2:
            printf("星期二\n");
            break;
        case 3:
            printf("星期三\n");
            break;
        case 4:
            printf("星期四\n");
            break;
        case 5:
            printf("星期五\n");
            break;
        case 6:
            printf("星期六\n");
            break;
        case 7:
            printf("星期日\n");
            break;
        default:
            printf("输入错误\n");
            break;
    }
    return 0;
}

(2)注意事项

①switch 选择结构大多适用于等值选择   --菜单选择

②break 省略不写,switch 结构不会被影响,但是结果会被影响,不能中途退出,会把switch内容全部输出。

③default 省略不写,switch结构不会被影响,但是没有兜底匹配,一级相应输出内容

④default 在switch内的位置无关,switch 优先匹配case值,case匹配没有,才会进入dafault。

  • 15
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值