猜数字游戏——C语言实现

今天给大家带来一个猜数字游戏,这是我个人接触到的第一个比较完整的游戏程序了,我觉得还蛮好玩。

由于我是再linux下编写的,可能有些地方和windos不一样,只需要做一些小改动就好~

代码如下:

如果你玩了觉得好玩或者对你有帮助不妨给我点一个赞支持一下哦~


#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<unistd.h>
void Menu(){
  printf("***********************************\n"); 
  printf("******** 欢迎来到猜数字游戏********\n"); 
  printf("************请输入: 1 2************\n");
  printf("**************1:start**************\n"); 
  printf("**************0: exit *************\n"); 
  printf("***********************************\n"); 
}
void Game(){
  int Range = 0;
  int Random_Num = 0;
  int Guess = 0;
  int Count = 0;
  printf("请输入游戏的猜数上限(零~上限): \n");
  scanf("%d",&Range);
  Random_Num = rand()%Range + 1;//随机数求余你输入的Range值为0~Range-1
  printf("这个数是在 0 ~ %d 之间:\n",Range);
  printf("请猜数:\n");
  do{
  scanf("%d",&Guess);
  Count++;
  if(Guess>Random_Num)
    printf("猜大了~\n");
  else if(Guess<Random_Num)
    printf("猜小了~\n");
  else{
    if(Count == 1){
      printf("你的运气太好啦!只用了一次就猜对啦!\n");
      sleep(1);//linux下1为1s
      system("sl");//linux下的小火车命令
    }
    else 
      printf("恭喜你!猜对了!您猜了%d次\n",Count);   
    break;
  printf("请继续猜:\n");
  }
  }while(1); 
}
int main(){
  int InPut = 0;
  int Ex = 0;
  srand((unsigned)time(NULL));//我们应用rand()函数来生成随机数字,但是需要srand来初始化它,用time函数表示的时间戳可以 让srand初始化随机值,这样rand()函数就可以生成随机值
a: do{
    Menu();  
    printf("请输入:");
    scanf("%d",&InPut);
    switch(InPut){
      case 1:
        Game();
        break;
      case 0:
        printf("您确定要退出游戏吗?-_- 输入1确定退出\n");
        scanf("%d",&Ex);
        if(Ex == 1){
          printf("再见!\n");
          break;
        } 
        else 
          goto a;
      default:
        printf("输入错误!\n");
        break;
    }
  }while(InPut);//输入0时跳出switch同时跳出while循环,妙不可言!
   return 0;
}

感谢收看

有什么问题或者指教欢迎留言~

发布了19 篇原创文章 · 获赞 88 · 访问量 3266

猜你喜欢

转载自blog.csdn.net/qq_44954010/article/details/103750697