weixin_46655317 2021-10-06 23:56 采纳率: 100%
浏览 29
已结题

c语言下手,做猜数游戏出了问题

我想做个猜数程序,可以选择猜个位 十位 百位这种的,我试着写了下,不知道为什么出现了这种错误。请大佬们帮助看看。

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main()
{
srand(time(0));
int weishu;
printf("请选择猜的位数【1为一位数 2为2位数 3为三位数】"); scanf_s("%d", &weishu);
int n;
switch (weishu)
{
case 1:
int number = rand() % 1000 + 1;
int a = 0;
printf("请输入100以内的数字\n");
do
{
n++;
printf("输入你认为的数\n"); scanf_s("%d", &a);
if (number > a)
{
printf("小了\n");
}
else if (number < a)
{
printf("大了\n");
}
} while (number != a);
break;
case 2:
int number = rand() % 100 + 1;
int a = 0;
printf("请输入100以内的数字\n");
do
{
n++;
printf("输入你认为的数\n"); scanf_s("%d", &a);
if (number > a)
{
printf("小了\n");
}
else if (number < a)
{
printf("大了\n");
}
} while (number != a);
break;
case 3:
int number = rand() % 10 + 1;
int a = 0;
printf("请输入100以内的数字\n");
do
{
n++;
printf("输入你认为的数\n"); scanf_s("%d", &a);
if (number > a)
{
printf("小了\n");
}
else if (number < a)
{
printf("大了\n");
}
} while (number != a);
break;
}
printf("对了,你用%d次了\n", n);
system("pause");
return 0;
}

img

  • 写回答

2条回答 默认 最新

  • Pliosauroidea 2021-10-06 23:58
    关注

    不能在switchcase结构内新建变量,将所有可能用到的变量在外部定义,并在switch内部直接使用

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

报告相同问题?

问题事件

  • 系统已结题 10月15日
  • 已采纳回答 10月7日
  • 创建了问题 10月6日