【C语言】全网最强猜数字游戏(详解)

简介: 【C语言】全网最强猜数字游戏(详解)

本期内容应用的头文件有三个

#include <stdio.h>

#include <stdlib.h>

#include <time.h>


猜数字游戏的实现  


1. 电脑生成1~100随机数


2. 猜数字


猜大了,就告诉你:猜大了


猜小了,就告诉你:猜小了


猜对了,就告诉你:恭喜你,猜对了


1.1 调用游戏界面菜单

void menu()
{
  printf("**********************************\n");
  printf("***********   1.play     *********\n");
  printf("***********   0.exit     *********\n");
  printf("**********************************\n");
}


1.2 建立游戏分布模块

int main()
{
  int input = 0;
  srand((unsigned)time(NULL));
  do
  {
  menu();
  printf("请选择>:");
  scanf("%d", &input);
  switch (input)
  {
  case 1:
    printf("猜数字游戏\n");
    break;
  case 0:
            printf("退出游戏\n");
    break;
  default:
    printf("选择错误,请重新输入!\n");
    break;
  }
  } while (input);
  return 0;
}


1.3 调用游戏内容

void game()
{
  int ret = rand() % 100 + 1;
  int input = 0;
  while (1)
  {
  printf("请输入猜的数字>:");
  scanf("%d", &input);
  if (input > ret)
  {
    printf("猜大了\n");
  }
  else if (input < ret)
  {
    printf("猜小了\n");
  }
  else
  {
    printf("恭喜你,猜对了\n");
    break;
  }
  }
}

1. rand函数会返回一个0~32767之间的随机数


2. 所以想要得到0~100的随机数可以这样表示:rand()%100+1  //0~99+1-->1~100


3. 调用的随机数建议放在main主函数内部"srand((unsigned)time(NULL))",这样就会产生一次随机数。


1.4 完整版猜数字游戏展示

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void menu()
{
  printf("**********************************\n");
  printf("***********   1.play     *********\n");
  printf("***********   0.exit     *********\n");
  printf("**********************************\n");
}
void game()
{
  int ret = rand() % 100 + 1;
  int guess = 0;
  while (1)
  {
  printf("猜猜数字:>");
  scanf("%d", &guess);
  if (guess > ret)
  {
    printf("猜大了\n");
  }
  else if (guess < ret)
  {
    printf("猜小了\n");
  }
  else
  {
    printf("恭喜你,猜对了\n");
    break;
  }
  }
}
int main()
{
  int input = 0;
  srand((unsigned)time(NULL));
  do
  {
  menu();
  printf("请确认数字:>\n");
  scanf("%d", &input);
  switch (input)
  {
  case 1:
    printf("猜数字游戏开始\n");
    game();
    break;
  case 0:
    printf("猜数字游戏结束");
    break;
  default:
    printf("选择错误,请重新选择\n");
    break;
  }
  } while (input);
  return 0;
}
相关文章
|
5天前
|
程序员 C语言
C语言小游戏之猜数字
C语言小游戏之猜数字
14 5
|
5天前
|
算法 编译器 C语言
猜数字游戏C语言代码实现
猜数字游戏C语言代码实现
|
3天前
|
存储 C语言
C语言实战 | “贪吃蛇”游戏重构
在程序设计中,模块化思维至关重要,尤其对于复杂项目,它帮助分解任务,便于团队协作。以“贪吃蛇”游戏为例,游戏涉及两个角色:蛇和食物。使用数组存储蛇的位置,变量存储食物位置。游戏流程分为初始化、显示和更新数据。初始化时,食物位置随机,蛇的位置根据数组设定。显示数据则根据这些信息在屏幕上呈现角色。更新数据时,处理蛇的移动和增长以及食物的生成和消失。类似地,通过模块化方法可开发“打砖块”游戏,涉及球、球拍和砖墙,每个角色都有相应数据结构和更新逻辑。通过这种方式,游戏开发就像搭建积木,遵循框架逐步实现。
15 0
C语言实战 | “贪吃蛇”游戏重构
|
5天前
|
C语言
【海贼王编程冒险 - C语言海上篇】怎样用C语言实现简单的扫雷游戏?
【海贼王编程冒险 - C语言海上篇】怎样用C语言实现简单的扫雷游戏?
5 1
|
5天前
|
C语言
【海贼王编程冒险 - C语言海上篇】C语言如何实现简单的三子棋游戏?
【海贼王编程冒险 - C语言海上篇】C语言如何实现简单的三子棋游戏?
7 1
|
5天前
|
存储 安全 Serverless
扫雷游戏C语言代码实现——万字长文超详细,手把手教你实现,新手也能学会
扫雷游戏C语言代码实现——万字长文超详细,手把手教你实现,新手也能学会
|
6天前
|
存储 定位技术 API
C语言实战 -- 经典贪吃蛇游戏(含完整源码)
C语言实战 -- 经典贪吃蛇游戏(含完整源码)
9 1
|
2天前
|
C语言
C语言实现猜数字游戏:代码详解与函数解析
C语言实现猜数字游戏:代码详解与函数解析
5 0
|
3天前
|
存储 C语言
C语言实战 | “俄罗斯方块”游戏重构
摘要(Markdown格式): 在之前的游戏中,全局变量的过度使用导致存储浪费和低代码通用性。以“贪吃蛇”为例,显示功能依赖全局变量,限制了函数的复用。通过参数传递代替全局变量,如在“俄罗斯方块”等游戏中控制物体运动的函数,可提升代码重用性和模块化。重构过程中,即使小到变量命名和代码精简的改进,也能逐步带来程序质量的显著提升。
5 0
|
6天前
|
存储 C语言
C语言实战——扫雷游戏
C语言实战——扫雷游戏
9 0