weixin_48430085 2022-11-16 09:30 采纳率: 100%
浏览 173
已结题

有没有人知道为什么这样运行会提示[Error] case label '3' not within a switch statement

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int a,b,numOfQues=0,numOfRight=0;
char inquiry;
srand(time(NULL));
printf("欢迎你来做一位数的加减乘除法\n");
do
{
fflush(stdin);
int temp=rand()%4;
a=rand()%10;
b=rand()%10;
switch(temp)
{
case 0:
{
int ans;
printf("%d+%d=",a,b);
scanf("%d",&ans);
if(ans==a+b)
{
numOfRight++;
printf("正确\n");
} else
printf("错误\n");
break;
}
case 1:
{
int ans;
printf("%d-%d=",a,b);
scanf("%d",&ans);
if(ans==a-b)
{
numOfRight++;
printf("正确\n");
}else
printf("错误\n");
break;
}
case2:
{

            int ans;
        printf("%d*%d=",a,b);
        scanf("%d",&ans);
        if(ans==a*b){
            numOfRight++;
            printf("正确\n");
        }else
        printf("错误\n");
        break;        
 }

}
case 3:
{
if(b==0||(a%b!=0))continue;
int ans;
printf("%d / %d=",a,b);
scanf("%d",&ans);
if(ans==a/b)
{
numOfRight++;
printf("正确\n");
}else
printf("错误\n");
break;
}
numOfQues++;
printf("你还要做吗(N表示不要");
scanf("%d",inquiry);
}while(!('N'==inquiry||'n'==inquiry));
printf("你的正确率为%d,再见",numOfRight*100/numOfQues);
return 0;
}

展开全部

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-11-16 09:42
    关注

    case 3上一行的大括号删掉

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 11月27日
  • 已采纳回答 11月19日
  • 创建了问题 11月16日

悬赏问题

  • ¥20 对文档进行操作,有偿 有意向的可以加我v
  • ¥15 brainstorm进行致痫指数分析
  • ¥30 beeline连接hive集群会卡住
  • ¥15 julia语言画表面图
  • ¥15 前端css轮播图效果优化
  • ¥15 如何在已有的土地利用类型图中加入新的地类呢
  • ¥20 TCIA数据库下载报错,请问如何解决
  • ¥30 vue3使用@imgly/background-removal给图片去除背景
  • ¥15 从mysql导入数据到hive
  • ¥15 海康视频线上无法正常播放
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部