C语言:编程设计猜数游戏

news/2025/3/20 5:51:31/

先由计算机想一个数给用户猜,如果猜对了,提示“right!”,猜错了,提示“wrong!及大小”

思路:用随机函数rand()取到计算机想的数

代码:

#include <stdio.h>
#include <stdlib.h> //rand()在头文件stdlib.h定义,所以要包含
int main()
{int magic;int guess;magic= rand() %100 +1;  //调用随机函数,让计算机想0-100范围内的数printf("%d\n",magic);   //这行可以省略,仅验证结果用printf("input guess number:");scanf("%d",&guess);if (guess> magic){printf("too big!");}else if (guess< magic){printf("too small!");}else{printf("right!");}
}

运行结果

上面的代码仅能猜一次,如果想要 猜多次,直到猜对,可以用for 循环。
代码
#include <stdio.h>
#include <stdlib.h> //rand()在头文件stdlib.h定义,所以要包含
int main()
{int magic, flag=1,i;  //添加变量flag=1 表示没猜中和iint guess;magic= rand() %100 + 1;  //调用随机函数,让计算机想0-100范围内的数printf("%d\n",magic);   //这行可以省略,仅验证结果用for (i=1;flag> 0;i++){printf("input guess number:");  //放进循环里scanf("%d",&guess);  //放进循环里if (guess> magic){printf("too big!\n");}else if (guess< magic){printf("too small!\n");}else{printf("right!\n");printf("一共猜了%d次",i);  //打印猜的次数flag= 0;  //猜对了就改掉flag的值,使它不符合循环条件}}
}

运行效果

​​​​​​​

注意:这个rand()函数每次产生的随机数都一样,如果要不一样,要用C++做。


http://www.ppmy.cn/news/1580516.html

相关文章

Linux 命令学习记录

Linux 命令详解与进阶指南 Linux 是一种广泛使用的开源操作系统&#xff0c;掌握 Linux 命令是开发者和系统管理员的必备技能。本文将详细介绍 Linux 的常用命令&#xff0c;并涵盖一些高级进阶技巧&#xff0c;帮助你更高效地使用 Linux。 目录 基础命令 文件与目录操作文本…

[特殊字符] Blender + 在线渲染农场加速渲染|渲染 101 极简指南

⚡ 渲染 101&#xff1a;为什么需要加速&#xff1f; 耗时原因&#xff1a;场景复杂度↑&#xff08;模型 / 材质 / 灯光&#xff09; 渲染时间↑本地局限&#xff1a;单设备性能弱、硬件占用久核心方案&#xff1a;分布式计算&#xff08;多设备并行&#xff09; 自动化流程 …

JVM G1内存管理核心概念解析:Region、Card Table、CSet与RSet

一、Region&#xff08;堆分区&#xff09; 定义&#xff1a;Region是G1垃圾回收器中内存管理的最小单元&#xff0c;将传统连续堆划分为多个独立区域&#xff08;默认2048个&#xff09;&#xff0c;每个大小在1MB-32MB之间&#xff0c;支持动态调整。 核心特性&#xff1a;…

如何判断 MSF 的 Payload 是 Staged 还是 Stageless(含 Meterpreter 与普通 Shell 对比)

在渗透测试领域&#xff0c;Metasploit Framework&#xff08;MSF&#xff09;的 msfvenom 工具是生成 Payload&#xff08;载荷&#xff09;的核心利器。然而&#xff0c;当我们选择 Payload 时&#xff0c;经常会遇到一个问题&#xff1a;这个 Payload 是 Staged&#xff08;…

学习单片机需要多长时间才能进行简单的项目开发?

之前有老铁问我&#xff0c;学单片机到底要多久&#xff0c;才能进行简单的项目开发&#xff1f;是三个月速成&#xff0c;还是三年磨一剑&#xff1f; 今天咱们就来聊聊这个话题&#xff0c;我不是什么高高在上的专家&#xff0c;就是个踩过无数坑、烧过几块板子的“技术老友”…

从PLC到云端:5G嵌入式网关的MQTT协议转换与Ubuntu二次开发全解析

工业4.0和物联网技术的发展推动了5G嵌入式ARM边缘计算网关在工业自动化领域的广泛应用。这种网关不仅能够支持多种协议的数据采集&#xff0c;例如西门子PLC Smart 200&#xff0c;还能够通过MQTT协议高效传输数据至自建云平台&#xff0c;如EMQX。此外&#xff0c;基于Ubuntu系…

【开源免费】基于SpringBoot+Vue.JS失物招领平台(JAVA毕业设计)

本文项目编号 T 243 &#xff0c;文末自助获取源码 \color{red}{T243&#xff0c;文末自助获取源码} T243&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…

python二级每日十题(1)

\ 第一题,在Python中&#xff0c;变量名的命名规则&#xff1a;以字母或下划线开头&#xff0c;后面跟字母、下划线和数字&#xff1b;不能以数字开头.故选c项,博主正确 缩进&#xff1a;在逻辑行首的空白&#xff08;空格和制表符&#xff09;用来决定逻辑行的缩进层次&…