C语言猜数字升级版

  • 题目概述

猜数字是一种益智游戏,既可以两个人一起玩,也可以与电脑一起玩。现在我们需要将这个游戏移到电脑上,让电脑与我们一起玩猜数字游戏.

  • 需求分析
  1. 用户输入:确定用户输入的数据是否正确
  2. 游戏过程:保证计算机能正确选定一个随机数字,并能够正常与用户互动
  3. 次数限制:让计算机能够一直让用户猜测下去,直到用户回答正确
  4. 结果输出:确保用户的答案是否计算机提供的随机数相等
  • 总体设计
  1. 主函数:负责程序的主要运行,包括用户输入,游戏过程,输出结果
  2. 随机数生成:一个函数负责指定范围内的随机数
  3. 判定:一个函数负责处理用户的输入并判定
  4. 输出:负责输出游戏结果

原版猜数字可以看之前文章这里就不作过多的展示。

我们这里主要就都了两个点,

  1. system;c语言中的system()函数主要用于发出一个DOS命令,该函数已经收录在标准c库中,可以直接调用。使用时包含头文件<stdlib.h>.shutdown -s -t关机指令.
  2. 爱心的打印:printf ("%*s", 10, s); //意思是输出字符串s,但至少占10个位置,不足的在字符串s左边补空格,这里等同于printf ("%10s", s); %.*s: *用来指定宽度,对应一个整数.然后在网上搜的参数,去实现的爱心
  3. 关机就不做演示了,源代码直接放下面了
  4. #include<stdio.h>
    #include<time.h>
    #include<string.h>
    #include <stdlib.h>
    void CJ()
    {   
    int n = 0;
    printf("         请选择        \n");
    printf("*****1.()*******2.()***\n");
    printf("***********************\n");
    printf("***********************\n");
    printf("*****3.()*******4.()***\n");
    printf("***********************\n");
    scanf_s("%d", &n);
    switch (n)
    {
    case 1:
    printf("遗憾关机吧你\n");
    system("shutdown -s -t 0");
    break;
    case 2:
    printf("遗憾关机吧你\n");
    system("shutdown -s -t 0");
    break;
    case 3:
    printf("欧皇啊,让你在玩一次\n");
    break;
    case 4:
    printf("遗憾关机吧你\n");
                               system("shutdown -s -t 0");
                               break;
    }
     
    }
    void GC()
    {
    char a[] = "conjjgratulations on your success!conjjgratulations on your success!";
    printf("\n\n\n");
    printf("%*.*s\n", 58, 21, "**********");
    printf("%*.*s\n", 61, 25, "conjjgratulations on your success!");
    printf("%*.*s\n", 63, 29, "conjjgratulations on your success!");
    printf("%*.*s\n", 65, 33, a);
    printf("%*.*s\n", 66, 35, a);
    printf("%*.*s\n", 66, 35, a);
    printf("%*.*s\n", 65, 33, a);
    printf("%*.*s\n", 64, 31, a);
    printf("%*.*s\n", 63, 29, a);
    printf("%*.*s\n", 61, 25, a);
    printf("%*.*s\n", 59, 21, a);
    printf("%*.*s\n", 57, 17, a);
    printf("%*.*s\n", 55, 13, a);
    printf("%*.*s\n", 53, 9, a);
    printf("%*.*s\n", 51, 5, a);
    printf("%*.*s\n", 50, 3, a);
    printf("%*.*s\n", 49, 1, a);
     
    }
     
    void menu()
    {
    printf("***********************\n");
    printf("*****1.play 0.exit*****\n");
    printf("***********************\n");
    }
    void game()
    {
    int ret = 0;
    int guess = 0;
    ret = rand() % 100 + 1;
    int i = 0;
    for(i=1;i<=5;i++)
    {
    printf("请猜数字:>");
    scanf_s("%d", &guess);
    if (guess > ret)
    {
    printf("猜大了\n");
    }
    else if (guess < ret)
    {
    printf("猜小了\n");
    }
    else
    {
    printf("猜对了\n");
    GC();
    break;
    }
    if (i == 5)
    {
    printf("5次都没猜出\n");
    printf("让你来抽奖,抽不中就关机\n");
    CJ();
     
    }
     
     
    }
    }
    int main()
    {
    int input = 0;
    srand((unsigned int)time(NULL));
    do
    {
    menu();
    printf("请选择>:");
    scanf_s("%d", &input);
    switch (input)
    {
    case 1:
    game();
    break;
    case 0:
    printf("退出游戏\n");
    break;
    default:
    printf("选择错误\n");
    break;
    }
     
    } while (input)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/215309.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis HyperLogLog 数据结构模型统计

HyperLogLog HyperLogLog 不是一种新的数据结构 &#xff0c; 本质上是字符串类型。 是一种基数算法。 通过 HyperLogLog 可以节省内存空间&#xff0c;并完成独立总数的统计。 HyperLogLog 数据结构可用于仅使用少量恒定内存来计算集合中的唯一元素&#xff0c;具体而言&…

Linux高级管理-基于域名的虚拟Web主机搭建

客服机限制地址 通过 Require 配置项&#xff0c;可以根据主机的主机名或P地址来决定是否允许客户端访问。在httpd服 务器的主配置文件的<Location>&#xff0c;<Directory>、<Files>、<Limit>配置段中均可以使用Require 配置 项来控制客户端的访问。使…

Linux——web网站服务(一)

一、安装httpd服务器Apache网站服务 1、准备工作 为了避免发送端口冲突&#xff0c;程序冲突等现象&#xff0c;卸载使用rpm方式安装的httpd #使用命令检查是否下载了httpd [rootserver ~]# rpm -qa httpd #如果有则使用 [rootserver ~]# rpm -e httpd --nodeps Apache的配置…

c语言插入排序及希尔排序详解

目录 前言&#xff1a; 插入排序&#xff1a; 希尔排序&#xff1a; 前言&#xff1a; 排序在我们生活中无处不在&#xff0c;比如学生成就排名&#xff0c;商品价格排名等等&#xff0c;所以排序在数据结构的学习中尤为重要&#xff0c;今天就为大家介绍两个经典的排序算法&…

异常处理详解

异常概述 什么是异常&#xff1f; 异常是程序在“编译”或者“执行”的过程中可能出现的问题&#xff0c;注意&#xff1a;语法错误不算在异常体系中。 比如:数组索引越界、空指针异常、 日期格式化异常&#xff0c;等。 为什么要学习异常? 异常一旦出现了&#xff0c;如果…

.9.png编译报错

android项目中使用9-patch图编译报错&#xff1a;AAPT: error: file failed to compile. 原因是因为.9.png图中有线之间断开或者黑点的存在&#xff0c;把线连上或者把黑点去掉就可以了。如下&#xff1a;

2024 年 SEO 现状

搜索引擎优化&#xff08;SEO&#xff09;一直以来都是网络知名度和成功的基石。随着我们踏上 2024 年的征程&#xff0c;SEO领域正在经历重大变革&#xff0c;有些变革已经开始&#xff0c;这对企业、创作者和营销人员来说既是挑战也是机遇。 语音搜索 语音搜索曾是一个未来…

Python爬取酷我音乐

&#x1f388; 博主&#xff1a;一只程序猿子 &#x1f388; 博客主页&#xff1a;一只程序猿子 博客主页 &#x1f388; 个人介绍&#xff1a;爱好(bushi)编程&#xff01; &#x1f388; 创作不易&#xff1a;喜欢的话麻烦您点个&#x1f44d;和⭐&#xff01; &#x1f388;…

用23种设计模式打造一个cocos creator的游戏框架----(十三)模板方法模式

1、模式标准 模式名称&#xff1a;模板方法模式 模式分类&#xff1a;行为型 模式意图&#xff1a;定义一个操作中的算法骨架&#xff0c;而将一些步骤延迟到子类中。Template Method 使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 结构图&#xff1a…

BigData之Google Hadoop中间件安装

前言 Hadoop / Zookeeper / Hbase 因资源有限 这三个都是安装在同一台Centos7.9的机器上 但通过配置 所以在逻辑上是distributed模式 1 Java安装 1.1 下载java11 tar/opt/java/jdk-11.0.5/ 1.2 环境配置修改 文件/etc/profile export JAVA_HOME/opt/java/jdk-11.0.5/ e…

【复现】vid2vid_zero

问题及解决方法总结。 code&#xff1a;GitHub - baaivision/vid2vid-zero: Zero-Shot Video Editing Using Off-The-Shelf Image Diffusion Models 1.AttributeError: UNet2DConditionModel object has no attribute encoder 据说是预训练模型结构不匹配&#xff0c;偷懒把a…

java工程(ajax/axios/postman)向请求头中添加消息

1、问题概述 在项目中我们经常会遇到需要向请求头中添加消息的场景&#xff0c;然后后端通过request.getRequest()或者RequestHeader获取请求头中的消息。 下面提供几种前端向请求头添加消息的方式 2、创建一个springmvc工程用于测试 2.1、创建工程并引入相关包信息 sprin…

家具制造ERP软件包含哪些功能?家具制造业ERP系统哪个好

不同的家具有不同的用料、品质、制造工时、营销渠道等&#xff0c;而有些家具制造企业采用传统的管理方式在处理物料BOM、生产实际成本核算、库存盘点、供应商选择、班组计件核对、生产领用以及物料追溯等方面存在不少提升空间。 与此同时也有很多的皮具制造企业借助ERP软件优…

​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案

随着“第四次工业革命”的爆炸式发展&#xff0c;众多企业都将自己的业务与迅速发展的应用开发和网站建设领域高度绑定。而对于众多有上云需求的企业和个人用户来说&#xff0c;选择一款自己的服务器配置就成为了一项至关重要的任务。而随着需求端的不断扩大&#xff0c;云服务…

宝塔PostgreSQL设置数据库远程访问

宝塔PostgreSQL设置数据库远程访问 宝塔的PostgreSQL1. 添加数据库2. 打开PostgreSQL设置界面3. 修改配置4. 重载配置/重启数据库 Docker的PostgreSQL1. postgresql.conf2. pg_hba.conf3. 重启数据库 注意其他问题 宝塔PostgreSQL设置数据库远程访问&#xff1f;docker容器Post…

arm-linux设备fsck命令移植

arm-linux设备fsck命令移植 文章目录 **arm-linux设备fsck命令移植**1、下载e2fsprogs-源码2、解压3、进入源码目录4、配置编译环境&#xff1a;使用以下命令配置交叉编译环境5、测试 1、下载e2fsprogs-源码 首先要确定自己的文件系统格式&#xff0c;IG2000的文件系统是ext4&…

【银行测试】第三方支付功能测试点+贷款常问面试题(详细)

前言 1、第三方支付功能测试点 支付流程&#xff1a; 我们在测试一个功能时&#xff0c;需要先了解一下这个逻辑&#xff0c;而订单支付逻辑普遍都会有以下内容&#xff1a; 1&#xff09;创建本地唯一订单号&#xff1b; 2&#xff09;去调用支付&#xff0c;在支付平台生…

kubeadm搭建单master多node的k8s集群--小白文,图文教程

参考文献 K8S基础知识与集群搭建 kubeadm搭建单master多node的k8s集群—主要参考这个博客&#xff0c;但是有坑&#xff0c;故贴出我自己的过程&#xff0c;坑会少很多 注意&#xff1a; 集群配置是&#xff1a;一台master&#xff1a;zabbixagent-k8smaster&#xff0c;两台…

pycharm手动安装包

1.下载对应的包 TTS PyPI 2.手动解压&#xff0c;找到文件放到pycharm对应项目的lib文件夹中 以TTS包为例&#xff0c;找到下载并解压的包中的2个文件&#xff0c;一个名称一个info结尾 3.放到项目的lib文件夹中 eg&#xff1a;路径&#xff1b;C:\doc\myProject\speaker\venv…

离散型随机变量的分布律(也称概率质量函数:probability mass function, PMF)

设是一个离散型随机变量&#xff0c;可能的取值为&#xff0c;取各个值的概率记为&#xff1a; &#xff08;1&#xff09; 其中 并且&#xff0c; 公式&#xff08;1&#xff09;就称为离散型随机变量的分布律&#xff0c;也称概率质量函数&#xff1a;probability ma…