Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C++ 教程

C++ 主页 C++ 简介 C++ 入门 C++ 语法 C++ 输出 C++ 注释 C++ 变量 C++ 用户输入 C++ 数据类型 C++ 运算符 C++ 字符串 C++ 数学 C++ 布尔值 C++ if...Else C++ switch C++ while 循环 C++ for 循环 C++ break/continue C++ 数组 C++ 结构体 C++ 枚举 C++ 引用 C++ 指针

C++ 函数

C++ 函数 C++ 函数参数 C++ 函数重载 C++ 范围 C++ 递归

C++ 类

C++ 面向对象编程 C++ 类/对象 C++ 类方法 C++ 构造函数 C++ 访问修饰符 C++ 封装 C++ 继承 C++ 多态 C++ 文件 C++ 异常 C++ 日期

C++ 数据结构

C++ 数据结构 & STL C++ 向量 C++ 列表 C++ 栈 C++ 队列 C++ 双端队列 C++ 集合 C++ 映射 C++ 迭代器 C++ 算法

C++ 如何

C++ 加两个数字 C++ 随机数

C++ 参考资料

C++ 参考资料 C++ 关键字 C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime> C++ <vector> C++ <algorithm>

C++ 例子

C++ 例子 C++ 现实生活中的例子 C++ 编译器 C++ 练习 C++ 测验 C++ 证书


C++ switch


C++ switch 语句

使用 switch 语句来选择要执行的多个代码块中的一个。

语法

switch(表达式) {
  case x
    // 代码块
    break;
  case y
    // 代码块
    break;
  default
    // 代码块
}

工作原理

  • switch 表达式只会被评估一次
  • 表达式的值将与每个 case 的值进行比较
  • 如果匹配,则执行关联的代码块
  • breakdefault 关键字是可选的,将在本章后面介绍

下面的例子使用星期几的数字来计算星期几的名称

例子

int day = 4;
switch (day) {
  case 1
    cout << "星期一";
    break;
  case 2
    cout << "星期二";
    break;
  case 3
    cout << "星期三";
    break;
  case 4
    cout << "星期四";
    break;
  case 5
    cout << "星期五";
    break;
  case 6
    cout << "星期六";
    break;
  case 7
    cout << "星期日";
    break;
}
// 输出 "星期四" (day 4)
自己尝试 »

break 关键字

当 C++ 遇到 break 关键字时,它将退出 switch 块。

这将停止执行块内的更多代码和 case 测试。

当找到匹配项并且工作完成时,就该 break 了。无需进行更多测试。

break 可以节省大量执行时间,因为它会 "忽略" switch 块中所有剩余代码的执行。



default 关键字

default 关键字指定在没有 case 匹配的情况下要运行的代码

例子

int day = 4;
switch (day) {
  case 6
    cout << "今天是星期六";
    break;
  case 7
    cout << "今天是星期日";
    break;
  default
    cout << "期待周末";
}
// 输出 "期待周末"
自己尝试 »

C++ 练习

通过练习测试自己

练习

插入缺失的部分以完成以下 switch 语句。

int day = 2;
switch () {
 1:
    cout << "Saturday";
    break;
 2:
    cout << "Sunday";
    ;
}

开始练习


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.