游戏玩法:每次随机生成一个1~100之间的数字,玩家通过输入数字来猜这个数,如果没猜中则提示玩家猜大了或者猜小了,直到玩家猜中数字结束游戏。

游戏玩法非常简单,那么怎么实现呢?

首先对内容进行分析,我们首先需要生成一个随机数,可以考虑通过rand函数来实现:

num = rand() % 100 + 1

但是当我们写完代码调试试玩会发现每次的随机数都是相同的,并不能达到游戏效果,所以我们要在之前加入如下代码:

srand((int)time(NULL));//随机数发生器初始化

这样,每次我们都会重新产生一个新的随机数。

接下来我们则需要构造循环来实现玩家猜数字的过程,并且通过玩家给入的数字不断提示玩家猜大了还是猜小了。代码实现如下:

void Game() {int num = rand() % 100 + 1;//生成随机数int x = 0;while (1) {printf("请输入你猜的数字:");scanf("%d", &x);if (x == num) {printf("恭喜你,猜对了!\n");break;}else if (x < num) {printf("猜小了。\n");}else {printf("猜大了。\n");}}
}

这样,我们游戏的主体就已经实现了,除此之外,我们还可以为游戏写一个菜单来供玩家选择玩游戏还是结束游戏退出。实现比较简单,直接上代码:

void Menu(){printf("--------------------------------\n");printf("-----------   1. Play   --------\n");printf("-----------   0. Exit   --------\n");printf("--------------------------------\n");
}

最后,我们只需要写一个选择函数来判断玩家的选择和进行对应的操作就完成了!

游戏完整代码实现如下:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>void Game();
void Menu();int main() {int i = 0;srand((int)time(NULL));//随机数发生器初始化do {Menu();//调用菜单打印函数printf("请输入你的选择:");scanf("%d", &i);switch (i) {case 1:Game();//调用游戏函数break;case 0:printf("游戏结束!");break;default:printf("你的输入有误,请重新输入!\n");break;}} while (i);printf("再见!\n");return 0;
}void Menu(){printf("--------------------------------\n");printf("-----------   1. Play   --------\n");printf("-----------   0. Exit   --------\n");printf("--------------------------------\n");
}void Game() {int num = rand() % 100 + 1;//生成随机数int x = 0;while (1) {printf("请输入你猜的数字:");scanf("%d", &x);if (x == num) {printf("恭喜你,猜对了!\n");break;}else if (x < num) {printf("猜小了。\n");}else {printf("猜大了。\n");}}
}

效果展示:

C语言程序设计——猜数字游戏相关推荐

  1. c语言程序设计 猜数字,C语言程序设计(猜数字游戏)报告.doc

    C语言程序设计(猜数字游戏)报告 <高级语言程序设计>课程设计 题目:班级:09R3 学生姓名:谢泽雄 学生学号:200931000622 指导老师:提交时间:华南农业大学信息(软件)学院 ...

  2. c语言程序设计 猜数字,猜数字游戏c语言编程,c语言编程 编一个猜数字游戏

    c语言编程 编一个猜数字游戏 #include #include #include #include void main()/*主函数*/ { int a,b,times=0,i,j,guess=0, ...

  3. c语言编程题猜数字游戏6题,c语言编程—猜数字游戏.doc

    c语言编程-猜数字游戏 计算机实习报告 面向过程编程 用C语言求解实际问题 一.问题描述 游戏类第15个任务--猜数字游戏 计算机从0-9这10个数字中任意选择n个不重复数字(n≤10)组成一个5位数 ...

  4. C语言编写猜数字游戏及随机数生成方法

    C语言编写猜数字游戏及随机数生成方法 文章目录 C语言编写猜数字游戏及随机数生成方法 前言 一.猜数字小游戏 内容: 步骤: 代码的实现: 二.随机数生成的方法 总结 前言 对于C语言初学者来说,当我 ...

  5. 用python做C语言的猜数字游戏,[Python3 练习] 007 简单的猜数字小游戏

    题目:简单的猜数字小游戏 (1) 描述 程序随机生成一个数字,玩家用键盘输入所猜数字,在规定次数内猜对为胜. (2) 要求 程序随机生成一个 1 到 100 的自然数 有 7 次机会去猜 机会用尽之前 ...

  6. c语言猜数字游戏用while,用C语言实现猜数字游戏

    本文实例为大家分享了C语言实现猜数字的具体代码,供大家参考,具体内容如下 问题:计算机随机生成一个数字,用户进行猜数字,当用户猜错时,提醒用户猜高/猜低,直到用户猜的数字与计算机给的随机数一致时,提示 ...

  7. C语言实现猜数字游戏(通俗易懂)

    文章目录 前言 一.代码思路: 1.游戏菜单: 2.主函数: 3.游戏函数: 二.游戏总体代码: 结尾: 前言 首先规划一下我们的猜数字游戏: 数字给定(1-100)的随机值,生成随机值的方法之前有讲 ...

  8. 【C语言】第一个C语言项目——“猜数字”游戏(内附源码)

    君兮_的个人主页 勤时当勉励 岁月不待人 C/C++ 游戏开发 Hello米娜桑,这里是君兮_,今天又抽空为大家更新我们的主线0基础C语言啦!鉴于最近讲解了非常多的选择语句与循环语句,咱们今天就来讲讲 ...

  9. 【C语言】-猜数字游戏

    目录 一.猜数字游戏 1.什么是猜数字游戏? 2.怎么实现猜数字游戏? 1>.分析需要的功能 2>.随机数的产生 3>.system()函数 4>.总代码 二.猜数字游戏+关机 ...

最新文章

  1. [渝粤教育] 中国地质大学 企业文化建设与管理 复习题
  2. spring boot入门(九) springboot的过滤器filter。最完整、简单易懂、详细的spring boot教程。
  3. python同时读取多个文件的同一行
  4. 虚拟机访问本地mysql_如何在本地远程连接linux虚拟机上面的mysql
  5. 移动端照片上传、头像裁剪完整功能,兼容iphone,android (一)
  6. python vtk实时更新点云_Python-VTK:点云和颜色b
  7. 关于lua字节码在32位和64位系统上不兼容的问题
  8. 洛谷oj---P1896 [SCOI2005] 互不侵犯
  9. java工资管理系统课程设计_java课程设计工资管理系统.doc
  10. 雷达存在感应器技术,实时感知控制应用,雷达人体探测方案
  11. ArcGIS教程 - 4 GIS数据
  12. 论文笔记:DeepReID: Deep Filter Pairing Neural Network for Person Re-Identification
  13. 什么是最长前缀匹配?为什么网络前缀越长,其地址块就越小,路由就越具体?
  14. 实体、协议、服务和服务访问点的概念
  15. 艾司博讯:怎么增加拼多多访客数
  16. 使用Vue快速开发单页应用
  17. Vbs-Js_Vir
  18. c语言变量循环队列的遍历操作,C语言实现循环队列
  19. 工程伦理--10.3 工程师的职业美德内涵
  20. 在校(应届)大学生JAVAEE职业规划图

热门文章

  1. socket编程 error: storage size of ‘sockAddr’ isn’t known
  2. 视频编码码率控制:CBR、VBR和ABR
  3. Flutter PullToRefresh上下拉刷新控件
  4. 7-76 查询水果价格
  5. 程序员自学理财8~理财必读《富人思维》精典笔记
  6. 04_Linux ARM架构-部署kibana服务-银河麒麟V10 操作系统
  7. 记录几个免费质量高的图库视频库
  8. 【信号去噪】基于小波阈值实现心电信号去噪附matlab代码
  9. matlab regress
  10. matlab如何离散椭圆方程,给出一些椭圆上离散的点的横纵坐标,怎么用matlab拟合出椭圆方程...