用C语言实现猜数字游戏

 更新时间:2020年10月11日 15:31:12   作者:懒洋洋  
这篇文章主要为大家详细介绍了用C语言实现猜数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了C语言实现猜数字的具体代码,供大家参考,具体内容如下

问题:计算机随机生成一个数字,用户进行猜数字,当用户猜错时,提醒用户猜高/猜低,直到用户猜的数字与计算机给的随机数一致时,提示猜对了并结束本次游戏。

思路:整个程序分为三个部分。

1、使用printf完成一个主菜单,方便用户操作。
2、写一个game函数,完成猜数字游戏的过程。
3、主函数,调用game函数,最终实现猜数字游戏。

重点:如何生成一个随机数。

如果直接使用to_guess = rand() % 100 + 1,可以生成一个1~100之间的随机数,但每次重新运行程序,产生的随机数都是固定的,这就需要我们想办法来解决这个问题。通过srand函数来设置随机种子,并借助time函数让每次产生的随机数序列都完全不同。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu() {
  printf("****************************\n");
  printf("   猜数字游戏   \n");
  printf(" 1、开始游戏,0、结束游戏 \n");
  printf("   请输入0或1   \n");
  printf("****************************\n");
  return;
}
void game() {
  int num = 0;
  int to_guess = rand() % 100 + 1;
  while (1) {
     printf("请输入猜的数字:\n");
     scanf("%d", &num);
     if (num > to_guess) {
       printf("高了!\n");
     }
     else if (num < to_guess) {
       printf("低了!\n");
     }
     else {
       printf("恭喜你猜对了!\n");
       break;
     }
  }
}
int main() {
  int a;
  menu();
  srand((unsigned int) time(0));
  while (1) {
    printf("请输入您的选择:\n");
     if (scanf("%d", &a)) {
       if(a==1) {
         game();
     }
      else if (a == 0) {
         printf("goodbye!\n");
         break;
       }
       else {
         printf("您的输入有误,请重新输入\n");
       }
     }
  }
  system("pause");
  return 0;
}

运行结果:

更多有趣的经典小游戏实现专题,分享给大家:

C++经典小游戏汇总

python经典小游戏汇总

python俄罗斯方块游戏集合

JavaScript经典游戏 玩不停

javascript经典小游戏汇总

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • OpenCV利用霍夫变换进行直线检测

    OpenCV利用霍夫变换进行直线检测

    这篇文章主要为大家详细介绍了OpenCV利用霍夫变换进行直线检测,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • c++ 子类构造函数初始化及父类构造初始化的使用

    c++ 子类构造函数初始化及父类构造初始化的使用

    这篇文章主要介绍了c++ 子类构造函数初始化及父类构造初始化的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • C语言可变参数函数详解示例

    C语言可变参数函数详解示例

    一般我们编程的时候,函数中形式参数的数目通常是确定的,在调用时要依次给出与形式参数对应的实际参数。但在某些情况下我们希望函数的参数个数可以根据需要确定,因此c语言引入可变参数函数。典型的可变参数函数的例子有printf()、scanf()等,下面我就开始讲解
    2013-11-11
  • C++如何实现DNS域名解析

    C++如何实现DNS域名解析

    这片文章介绍了C++如何实现DNS域名解析,还有对相关技术的介绍,代码很详细,需要的朋友可以参考下
    2015-07-07
  • C语言数据结构之图书借阅系统

    C语言数据结构之图书借阅系统

    这篇文章主要为大家详细介绍了C语言数据结构之图书借阅系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 使用C语言编写一个关机恶搞小程序

    使用C语言编写一个关机恶搞小程序

    system函数的参数是"shutdown"时,它将会执行系统的关机命令,所以本文将利用这一特点制作一个关机恶搞小程序,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • C++实现LeetCode(133.克隆无向图)

    C++实现LeetCode(133.克隆无向图)

    这篇文章主要介绍了C++实现LeetCode(133.克隆无向图),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • C 语言注释和变量使用基础详解

    C 语言注释和变量使用基础详解

    这篇文章主要为大家介绍了C语言注释和变量使用示例基础详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • C++的友元和内部类你了解吗

    C++的友元和内部类你了解吗

    这篇文章主要为大家介绍了C++的友元和内部类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • 简单的汉诺塔问题解法代码

    简单的汉诺塔问题解法代码

    汉诺塔本是C语言开门就学的东西,简单的汉诺塔问题解法代码
    2013-03-03

最新评论