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.hqwc.cn/news/267263.html

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

相关文章

两线制无源 4-20mA 回路供电隔离变送器

两线制无源 4-20mA 回路供电隔离变送器 一入一出两线制无源 4-20mA 回路供电隔离变送器 概述&#xff1a;JSD TAW-1001D-100L-F 系列隔离变送器是 4-20mA 两线制回路供电的电流隔离变送配电器,该隔离变送器采用电磁隔离技术,并通过输入端馈电方式,给输入端两线制仪器仪表设备供…

javascript和HTML手机端实现多条件筛选的实战记录(筛选层的展示与隐藏、AJAX传输数组)

实现多条件筛选功能在JavaScript和HTML中可以分为以下几个步骤&#xff1a; HTML页面布局: 设计你的页面布局&#xff0c;包括筛选条件的选择器和结果展示区域。‘’ JavaScript逻辑:通过JavaScript监听筛选条件的变化&#xff0c;并根据选择的值对结果进行筛选。动态展示: 实…

nginx的location与rewrite

目录 一.location 二.rewrite rewrite跳转实现&#xff1a; 语法格式&#xff1a;rewrite [flag]; flag标记说明&#xff1a; 三.基于域名跳转 四.基于ip跳转 五.基于旧域名跳转到新域名后面加目录 六.基于参数匹配的跳转 可以同过全局变量来匹配&#xff1a; 基于目…

vue3 element-plus 日期选择器 el-date-picker 汉化

vue3 项目中&#xff0c;element-plus 的日期选择器 el-date-picker 默认是英文版的&#xff0c;如下&#xff1a; 页面引入&#xff1a; //引入汉化语言包 import locale from "element-plus/lib/locale/lang/zh-cn" import { ElDatePicker, ElButton, ElConfigP…

EasyExcel使用模板导出复杂Excel

1&#xff09;添加easyexlce的依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.0.0-beta1</version> </dependency>2&#xff09;添加excel模板文件 实现的效果&#xff1a;…

智能优化算法应用:基于蝙蝠算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于蝙蝠算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于蝙蝠算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.蝙蝠算法4.实验参数设定5.算法结果6.参考文献7.MA…

裸机单片机适用的软件架构

单片机通常分为三种工作模式&#xff0c;分别是 1、前后台顺序执行法 2、操作系统 3、时间片轮询法 1、前后台顺序执行法 利用单片机的中断进行前后台切换&#xff0c;然后进行任务顺序执行&#xff0c;但其实在…

【产品】Axure入门

Axure入门 一、Axure概述1.1 简介1.2 优点1.3 安装1.4 汉化 二、Axure的使用2.1 菜单栏2.1.1 菜单栏-文件2.1.2 菜单栏-视图 2.2 发布2.2.1 预览2.2.2 生成html代码 一、Axure概述 1.1 简介 Axure是一款专业的快速原型设计工具&#xff0c;全名为RP Axure。它是美国Axure Sof…

TypeScript 常用高级类型

目录 前言&#xff1a; TypeScript 常用高级类型 基本概念 高级类型 1. 交叉类型&#xff08;Intersection Types&#xff09; 2. 联合类型&#xff08;Union Types&#xff09; 3. 映射类型&#xff08;Mapped Types&#xff09; 4. 条件类型&#xff08;Conditional…

【51单片机系列】文字取模软件使用

软件链接&#xff1a;https://pan.baidu.com/s/1k-ND9vJReW_KHMWx8uwpcQ?pwdgz8w 提取码&#xff1a;gz8w 双击打开软件&#xff0c;选择【基本操作】->【新建图像】&#xff0c;设置图像的宽度和高度为8。点击确定后将在显示窗口出现一个8x8的白色格子&#xff0c;类似于…

简单的 u-popup 弹出框

uniapp中的popup组件可以用于弹出简单的提示框、操作框、菜单等。它可以通过position属性控制弹出框的位置&#xff0c;不同的position值会使得弹出框呈现不同的弹出形式 目录 一、实现思路 二、实现步骤 ①view部分展示 ②JavaScript 内容 ③css中样式展示 三、效果展示 …

python:五种算法(HHO、WOA、GWO、PSO、GA)求解23个测试函数(python代码)

一、五种算法简介 1、哈里斯鹰优化算法HHO 2、鲸鱼优化算法WOA 3、灰狼优化算法GWO 4、粒子群优化算法PSO 5、遗传算法GA 二、5种算法求解23个函数 &#xff08;1&#xff09;23个函数简介 参考文献&#xff1a; [1] Yao X, Liu Y, Lin G M. Evolutionary programming …