C语言四 分支和跳转

在C语言程序的顺序执行过程中,我们有时候希望经过判断以后只执行某一行或者某一块代码,这时候常常用到分支结构,先用IF语句来实现这一功能

如:成绩查询系统,0-59输出不及格,60-69输出及格,70-79输出合格,80-89输出良好,90-100输出优秀

#include <stdio.h>

int main () {

    float score;

    scanf ("%f",&score);

    if (score<60)printf("您的成绩不及格");
    
    if (score>=60&&score<70)printf("您的成绩及格");
 
    if (score>=70&&score<80)printf("您的成绩合格");
    
    if (score>=80&&score<90)printf("您的成绩良好");

    if (score>=90&&score<100)printf("您的成绩优秀");

}

通过多个if对score的判断执行特定的语句,虽然能达到目的,但是缺点也很明显,每写一个语句就要敲一长串,特别是对于等多情况的判断,if就更不方便使用了。

对于要对一个变量进行多次判断时,我们常用switch来判断,对于上面例子,我们可以改写成如下形式

#include <stdio.h>

int main () {

    float score;

    scanf ("%f",&score);

    score = score / 10; // 取出score十位数判断
    
    switch(score){
    
    case 6:
   
         printf("您的成绩及格");
    
    case 7:
    
        printf("您的成绩合格");
    
    case 8:
    
        printf("您的成绩良好");
        
    case 9:
    
        printf("您的成绩优秀");
    
    case 10:
    
        printf("您的成绩优秀");
    
    default:
    
        printf("您的成绩不及格");
    }

}

在switch语句中,score所在的位置也可以换成表达式如换成a+b等。可以看到使用switch语句在对于判断单一值的多种情况时相较于if语句更方便,当然也可以在每个执行的语句最后加上break;退出判断,有效节省系统资源。还可以加入default用于识别不属于已知值的情况。

if和switch语句中除执行单个语句外,还可以调用函数,如:case 1: fun();关于函数的调用还会在后面详细讲解

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值