C++青少年简明教程:switch语句

C++青少年简明教程:switch语句

在C++中,switch语句用于基于一个表达式的值来执行不同的代码块。这个表达式通常是一个整数类型(如int,char,或枚举类型),并且case标签必须是整数常量表达式。

语法格式:

switch(表达式){
    case 常量表达式1:
        语句1;
        [break;]
    case 常量表达式2:
        语句2;
        [break;]
    case 常量表达式3:
        语句3;
        [break;]
    ......

    [default:
        语句k;
        [break;]]
}

switch语句执行流程图:

或者

上面这两个switch语句执行流程图是等价的。

例、使用 switch 语句来根据用户输入的数字表示的星期几,打印出对应的星期几的文本。

#include <iostream>
using namespace std;

int main() {
    int day;
    cout << "请输入星期几(用数字表示,1-7):";
    cin >> day;

    switch(day) {
        case 1:
            cout << "星期一" << endl;
            break;
        case 2:
            cout << "星期二" << endl;
            break;
        case 3:
            cout << "星期三" << endl;
            break;
        case 4:
            cout << "星期四" << endl;
            break;
        case 5:
            cout << "星期五" << endl;
            break;
        case 6:
            cout << "星期六" << endl;
            break;
        case 7:
            cout << "星期日" << endl;
            break;
        default:
            cout << "无效的输入" << endl;
    }

    return 0;
}

当用户输入一个数字时,将会根据相应的 case 打印出对应的星期几。如果用户输入的数字不在 1-7 的范围内,则执行 default 下的代码块,打印出 "无效的输入"。

前一节母子约定问题,改用switch语句:

#include <iostream>
using namespace std;

int main() {
    int fenshu;
    cout << "请输入考试分数:";
    cin >> fenshu;
    
    switch(fenshu/10) {
    	case 10:
    		cout << "暑假不用写作业";
    		break;
    	case 9:
        	cout << "奖励100元零花钱";
        	break;
    	case 8:
        	cout << "奖励10元零花钱";
        	break;
    	case 7:
        	cout << "没奖励";
        	break;
    	case 6:
       		cout << "暑假不能玩电子游戏";
       		break;
    	default:
        	cout << "会发生可怕的事情...";       		
	} 

    return 0;
}

提示,这个代码首先将分数除以10,得到一个整数——将连续的分数范围映射到离散的整数值,从而在switch语句中进行等级判断。这是一种编程技巧。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习&实践爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值