首页 > 编程语言 >C++猜数字

C++猜数字

时间:2022-11-12 10:46:43浏览次数:72  
标签:谜底 数字 程序 用户 C++ 玩家

C++猜数字

程序设计题7:猜数字.

1问题描述

要求编写一个程序,实现猜数字的游戏。游戏规则如下:
(1)首先程序随机生成一个0-9999的数。
(2)玩家每次输入一个4位数,程序告诉玩家两个信息:

用户输入的数,在个、十、百、千4个数字中,有几个数字是谜底里面有的,且出现在正确的位置上;
用户输入的数,在个、十、百、千4个数字中,有几个数字是谜底里面有的,但未出现在正确的位置上。

例如,谜底为“1234”,用户输入“8243”,则程序告诉用户“1 2”, 意即用户的输入中,有1个数字猜对了,且位置也对,另外有两个数字猜对了,但是位置不对。
(3)如果用户在规定的次数内猜出谜底,则胜出,否则游戏失败。

2功能要求

代码要能提供以下几个基本功能。
(1)提供菜单选项,设置用户的猜测次数。如果用户未选择此项,则程序应提供默认值。
(2)提供菜单选项,让用户进入游戏。玩得好的玩家记录应保存,并存入硬盘上的文件。
(3)提供菜单选项,查询玩家记录的前五名。
(4)程序不应对谜底进行任何限制。谜底的各位数字允许出现重复的情况。当谜底不足4位数时,前面补0。如随机数为28,则谜底为“0028”。
选做要求:
(1)对用户的输入进行一定的正确性检查。
(2)除了玩家的猜测次数有限制之外,对玩家猜测的总时间进行限制。
(3)设计一个功能选项“AI玩家”。当选中此功能后,用电脑模拟用户来玩猜数字游戏,并将整个游戏的过程输出至屏幕或文本文件。

3其他要求

(1)变量、函数命名符合规范。
(2)注释详细:每个变量都要求有注释说明用途:函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)界面美观,交互方便。
(5)如有可能,可使用MFC等开发工具,实现彩色或图形操作界面。

4开发环境

可以选择TC2.0、TC3.0、 VC++6.0 等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。

源码传送门

传送门:https://pan.baidu.com/s/13vkJzh6iWxvgCCzdZOyqLg?pwd=1111

标签:谜底,数字,程序,用户,C++,玩家
From: https://www.cnblogs.com/codewriter/p/16882829.html

相关文章

  • C++多媒体文件管理及检索系统
    C++多媒体文件管理及检索系统程序设计题1:多媒体文件管理及检索系统出题人:刘林峰面向专业:广播电视工程难度等级:41问题描述建立一个多媒体文件信息管理系统,包括对各......
  • 数组中只出现一次的两个数字
     import java.util.*;public class Solution {    /**     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可     *......
  • [c/c++] size_t是什么
    结论:size_t是一个unsignedX类型,这里的X可以是char,int,long,longlong等等,因此size_t的最大值是根据实际情况而改变的,定义是他能容纳当前系统所能定义的数据的最......
  • [c/c++] 使用函数指针会导致程序变慢
    参考:​​c-DoesFunctionpointermaketheprogramslow?-StackOverflow​​正文:使用函数指针会导致程序变慢,比如先把某个函数的指针保存下来,然后调用这个指针比直接......
  • c++ bit 库用法
    c++20加入了一个叫做bit的库,不如来看看里面有什么?bit_cast效果和reinterpret_cast类似,按二进制位取值,constexprfloatN=100;constexprintM=std::bit_cast<int>......
  • 最大公约数 C/C++ leetcode , 辗转相除,更相减损
    #include <iostream>using namespace std;// 辗转相除法求最大公约数,用大的模小的,然后用除数模余数,该接口在新版的C++17的numeric 包中也有int gcd1(int a ,......
  • C++二维数组最大值
    C++二维数组最大值【问题描述】求二维整型数组的"最大点"。二维数组的"最大点"定义为:某个数是所在行的最大值,并且是所在列的最大值。注意:某行或某列上可能有多个"最大点"......
  • 数组中出现次数超过一半的数字
      import java.util.*;public class Solution {    public int MoreThanHalfNum_Solution(int [] array) {        //遍历数组,值标记位key......
  • 【leetcode_C++_二叉树_day12】层序遍历 10 && 226.翻转二叉树&&101. 对称二叉树
    1.层序遍历学会二叉树的层序遍历,可以一口气打完以下十题:102.二叉树的层序遍历107.二叉树的层次遍历II199.二叉树的右视图637.二叉树的层平均值429.N叉树的层序遍......
  • 周六1900C++班级2022-11-12-多组数据
    一、多组数据输入在TZOJ练习平台上,经常会见到一些题目说输入数据有多组、输入以EOF结束、当输入的数据为0时结束等等的题目描述,那么这些输入具体是如何去解决呢?1.有明确......