C++ switch 语句嵌套示例解析

以下代码是一个简单的 C++ 程序,其目的是计算变量 m 的值:

int main()
{
int a = 16, b = 21, m = 0;
switch (a % 3)
{
case 0:
m++;
break;
case 1:
m++;
switch (b % 2)
{
default :
m++;
case 0:
m++;
break;
}
}
cout << m ;
}

代码解析

  1. 变量初始化: 程序首先定义了三个整型变量 a、b 和 m,并分别初始化为 16、21 和 0。
  2. 外部 switch 语句: 使用 switch (a % 3) 根据 a 对 3 取模的结果进行判断:
    • case 0: 如果 a % 3 的结果为 0,则执行 m++ 语句,并将 m 的值加 1,然后通过 break 语句跳出外部 switch 语句。
    • case 1: 如果 a % 3 的结果为 1,则执行 m++ 语句,并将 m 的值加 1,然后进入内部 switch 语句。
  3. 内部 switch 语句: 使用 switch (b % 2) 根据 b 对 2 取模的结果进行判断:
    • default: 由于 default 位于 case 0 之前,无论 b % 2 的结果是什么,都会先执行 m++ 语句,并将 m 的值加 1。
    • case 0: 如果 b % 2 的结果为 0,则执行 m++ 语句,并将 m 的值加 1,然后通过 break 语句跳出内部 switch 语句。
  4. 输出结果: 最后,使用 cout << m; 语句输出变量 m 的值。

输出结果

根据上述代码逻辑,程序将输出 2

总结

这段代码演示了 C++ 中 switch 语句的嵌套使用。需要注意的是,default 语句可以出现在 switch 语句中的任何位置,并不一定在最后。在上面的例子中,由于 default 语句在 case 0 之前,所以无论 b % 2 的结果是什么,都会先执行 default 中的语句。

C++ switch 语句嵌套示例解析

原文地址: https://www.cveoy.top/t/topic/h57 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录