差劲很忙 2021-12-09 10:22 采纳率: 100%
浏览 55
已结题

c++中default问题

#include
using namespace std;

int main()
{
int n;
for(n=1;n<=5;n++)
switch(n%5)
{case 0:cout<<n<<"@"<<endl;break;
case 1:cout<<n<<"#"<<endl;break;
default:cout<<n<<endl;
case 2:cout<<n<<"$"<<endl;
}
return 0;
}

为啥3和4那里会输出:
3
3$
4
4$

  • 写回答

2条回答 默认 最新

  • 关注

    因为switch语句是顺序执行的,按照case和default语句的先后顺序执行,所以当 n%5等于3和4的时候,会执行default语句。
    n%5等于3和4的时候,执行default,输出3或4的值,因为default后面没有break语句,继续执行case 2,输出3$或者4$

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月17日
  • 已采纳回答 12月9日
  • 创建了问题 12月9日

悬赏问题

  • ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
  • ¥15 C语言使用vscode编码错误
  • ¥15 用KSV5转成本时,如何不生成那笔中间凭证
  • ¥20 ensp怎么配置让PC1和PC2通讯上
  • ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
  • ¥15 dnat基础问题,本机发出,别人返回的包,不能命中
  • ¥15 请各位帮我看看是哪里出了问题
  • ¥15 vs2019的js智能提示
  • ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
  • ¥15 uniapp的h5项目写一个抽奖动画