博客
关于我
猜数游戏
阅读量:609 次
发布时间:2019-03-12

本文共 1428 字,大约阅读时间需要 4 分钟。

编写一个猜数字游戏的程序,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包括第N次)猜到该数,则提示“Good Guess!”;如果超过N次都没有猜到,则提示“Game Over”,并结束程序。如果在到达N次之前,用户输入了一个负数,也输出“Game Over”,并结束程序。

输入格式:输入第一行中给出两个不超过100的正整数,分别是游戏机产生的随机数、以及猜测的最大次数N。最后每行给出一个用户的输入,直到出现负数为止。

输出格式:在一行中输出每次猜测相应的结果,直到输出猜对的结果或“Game Over”则结束。

输入样例:58 47050565860-2

输出样例:Too bigToo smallToo smallGood Guess!


以下是优化后的代码:

#include 
int main() { int r, N, x; scanf("%d %d", &r, &N); int n = 0; while (1) { scanf("%d", &x); if (x < 0) { n--; break; } n++; if (x > r) { printf("Too big\n"); } else if (x < r) { printf("Too small\n"); } else { break; } } if (n < 0 || n > N) { printf("Game Over"); } else { if (n == 1) { printf("Bingo!"); } else if (n <= 3) { printf("Lucky You!"); } else if (n <= N) { printf("Good Guess!"); } } return 0;}

以上代码实现了一个猜数字游戏的功能,具体流程如下:

  • 读取两个输入值,分别是随机数r和猜测的最大次数N。
  • 进入循环,用户依次输入猜测的数字x。
  • 如果用户输入的x为负数,则输出“Game Over”并结束程序。
  • 每次输入的x进行比较:
    • 如果x大于随机数r,输出“Too big”。
    • 如果x小于随机数r,输出“Too small”。
    • 如果x等于随机数r,结束程序并输出结果。
  • 根据猜测的次数n输出不同的提示信息:
    • 如果n为1,输出“Bingo!”。
    • 如果n在2到3次之间,输出“Lucky You!”。
    • 如果n在4次以内(不超过N),输出“Good Guess!”。
    • 如果超过N次仍未猜中,或者用户输入了负数,输出“Game Over”。
  • 转载地址:http://yowaz.baihongyu.com/

    你可能感兴趣的文章
    Neo4j的安装与使用
    查看>>
    Neo4j(2):环境搭建
    查看>>
    Neo私链
    查看>>
    nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
    查看>>
    Nessus漏洞扫描教程之配置Nessus
    查看>>
    Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
    查看>>
    NetApp凭借领先的混合云数据与服务把握数字化转型机遇
    查看>>
    NetBeans IDE8.0需要JDK1.7及以上版本
    查看>>
    netcat的端口转发功能的实现
    查看>>
    netfilter应用场景
    查看>>
    netlink2.6.32内核实现源码
    查看>>
    Netpas:不一样的SD-WAN+ 保障网络通讯品质
    查看>>
    NetScaler的常用配置
    查看>>
    netsh advfirewall
    查看>>
    NETSH WINSOCK RESET这条命令的含义和作用?
    查看>>
    Netty WebSocket客户端
    查看>>
    netty 主要组件+黏包半包+rpc框架+源码透析
    查看>>
    Netty 异步任务调度与异步线程池
    查看>>
    Netty中集成Protobuf实现Java对象数据传递
    查看>>
    Netty事件注册机制深入解析
    查看>>