大一新生求教!!!感谢大佬们

求教 代码switch语句无法接受a的值 请问哪里出问题了 想写一个小游戏关于大一期末答辩的 各位大佬帮帮我

游戏内容大概关于 程序随机给出一段英文字符代码 然后在规定时间内输入按顺序输入代码

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include <windows.h>
#define CHAR_MIN 'a'
#define CHAR_MAX 'z'
int main()
{
 int a;
 void NanDu_1();
 void NanDu_2();
 void NanDu_3();
 printf("请选择难度(按1,2,3难度输入)\n");
 scanf("%d",&a);//接受选择难度的数据
 switch(a)
 {
 case 1: void NanDu_1();break;
 case 2: void NanDu_2();break;
 case 3: void NanDu_3();break;
 default: printf("选择错误,请重试!\n");break;//分别进行各难度函数
 }
 system("pause");
 return 0;
}
void NanDu_1()
{
 int i, j, k=5;
 char str_1[5];
 char str_2[5];
 for(i=0;i<5;i++)
 {
  char str_1[5+1]={0};
  int i;
  srand(time(NULL));//通过时间函数设置随机数种子,使得每次运行结果随机
  for(i=0;i<5;i++)
  {
   str_1[i]=rand()%(CHAR_MAX-CHAR_MIN+1)+CHAR_MIN;//生成要求范围内的随机数
  }
  printf("%s\n", str_1);//输出生成的随机数
 while(k>0)
 {
  printf("倒计时:%d\n",i);
  Sleep(1000);  //暂停1秒钟
  system("cls"); //清屏
  i--;
 }
 printf("时间到!\n");
  for(i=0;i<5;i++)
   scanf("%s",str_2[i]);
  for(j=0;j<5;j++)
  {if(str_2[j] != str_1[j])
  {break;}
  }
   printf("恭喜你通过了%d关,获得分数%d\n",i-1,i*10);
}
}
void NanDu_2()
{
 int i, j, k=10;
 char str_1[10];
 char str_2[10];
 for(i=0;i<10;i++)
 {
  char str_1[10+1]={0};
  int i;
  srand(time(NULL));//通过时间函数设置随机数种子,使得每次运行结果随机
  for(i=0;i<10;i++)
  {
   str_1[i]=rand()%(CHAR_MAX-CHAR_MIN+1)+CHAR_MIN;//生成要求范围内的随机数
  }
  printf("%s\n", str_1);//输出生成的随机数
 while(k>0)
 {
  printf("倒计时:%d\n",i);
  Sleep(1000);  //暂停1秒钟
  system("cls"); //清屏
  i--;
 }
 printf("时间到!\n");
  for(i=0;i<10;i++)
   scanf("%s",str_2[i]);
  for(j=0;j<10;j++)
  {if(str_2[j] != str_1[j])
  {break;}
  }
   printf("恭喜你通过了%d关,获得分数%d\n",i-1,i*10);
}
}
void NanDu_3()
{
 int i, j, k=15;
 char str_1[15];
 char str_2[15];
 for(i=0;i<15;i++)
 {
  char str_1[15+1]={0};
  int i;
  srand(time(NULL));//通过时间函数设置随机数种子,使得每次运行结果随机
  for(i=0;i<15;i++)
  {
   str_1[i]=rand()%(CHAR_MAX-CHAR_MIN+1)+CHAR_MIN;//生成要求范围内的随机数
  }
  printf("%s\n", str_1);//输出生成的随机数
 while(k>0)
 {
  printf("倒计时:%d\n",i);
  Sleep(1000);  //暂停1秒钟
  system("cls"); //清屏
  i--;
 }
 printf("时间到!\n");
  for(i=0;i<15;i++)
   scanf("%s",str_2[i]);
  for(j=0;j<15;j++)
  {if(str_2[j] != str_1[j])
  {break;}
  }
   printf("恭喜你通过了%d关,获得分数%d\n",i-1,i*10);
}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值