当前位置: 首页 > news >正文

Rust编程语言入门教程(四)猜数游戏:一次猜测

目录

  • 引言
  • 猜数游戏——目标
  • 一、创建项目
  • 二、编写代码
  • 三、运行代码
  • 四、代码解释
  • 总结

引言

猜数游戏是一个经典的编程练习,它不仅能够帮助开发者熟悉基本的输入输出操作,还能深入理解条件判断和用户交互的逻辑。在 Rust 中,通过标准库提供的 std::io 模块,我们可以轻松实现一个简单的猜数游戏。本文将详细介绍如何创建一个猜数游戏项目,编写代码,并运行和解释代码的每一部分。

猜数游戏——目标

  • 生成一个1到100间的随机数
  • 提示玩家输入一个猜测
  • 猜完之后,程序会提示猜测是太小了还是太大了
  • 如果猜测正确,那么打印出一个庆祝信息,程序退出,如果猜测错误就继续猜。

一、创建项目

创建cargo项目,用VSCode打开。
在这里插入图片描述

运行cargo项目 cargo run(编译代码+执行结果)
在这里插入图片描述

二、编写代码

这段代码实现了一个简单的输入输出程序,通过 std::io 模块,程序能够接收用户的输入并显示结果。
在这里插入图片描述

源代码:

use std::io;
fn main() {
    println!("欢迎来到猜数小游戏!");
    println!("请输入一个1到100之间的数:");

    let mut guess = String::new();

    io::stdin().read_line(&mut guess).expect("读取失败");

    println!("你输入的数是:{}", guess);
}

三、运行代码

在这里插入图片描述

四、代码解释

use std::io;

导入了标准库中的 io 模块,用于处理输入输出操作

fn main() {}

定义了程序的主函数 main,这是程序的入口。

println!(“欢迎来到猜数小游戏!”);
println!(“请输入一个1到100之间的数:”);

使用 println! 宏打印欢迎信息和提示信息,要求用户输入一个 1 到 100 之间的数字。

let mut guess = String::new();

定义了一个可变的空字符串变量 guess,用于存储用户输入的内容。

io::stdin().read_line(&mut guess).expect(“读取失败”);

io::stdin() 获取标准输入流。
read_line(&mut guess) 从标准输入中读取一行文本,并将其存储到 guess 中。
.expect("读取失败") 是一个错误处理机制,如果读取输入失败,程序会 panic 并打印 “读取失败” 提示。

println!(“你输入的数是:{}”, guess);

打印用户输入的内容,显示用户刚刚输入的数字。

总结

通过本文的介绍,我们成功创建了一个简单的猜数游戏项目。在项目中,我们使用了 Rust 的 std::io 模块来处理输入输出操作,通过 println! 宏打印提示信息,使用 read_line 方法获取用户输入,并通过 expect 方法处理可能的错误。虽然目前的代码仅实现了基本的输入输出功能,但它是猜数游戏的核心部分。接下来,我们可以进一步扩展功能,例如生成随机数、判断用户输入的大小关系、处理多次猜测等,使游戏更加完整和有趣。

相关文章:

  • HarmonyOS4-工具安装
  • 【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter15-DOM 扩展
  • STM32 CubeMx配置串口收发使用DMA并调用Idle模式(一)
  • 嵌入式编程——数据结构与linux编程
  • 测试常见问题汇总-检查表(持续完善)
  • 【C++游戏开发-五子棋】
  • 【SQL】SQL约束
  • 大模型开发框架对比:LangChain、LlamaIndex 及其他
  • golang如何将结构体和函数进行绑定?
  • AI 时代:探索大语言模型与核心技术
  • vue的data为什么是object
  • Unreal5从入门到精通之如何在 C++ 中创建 UserWidget
  • 贪吃蛇解析
  • 前端JS接口加密攻防实操
  • 观察者模式说明(C语言版本)
  • 达梦:dmserver占用io高排查
  • Kubernetes知识点总结(十)
  • C#之上位机开发---------C#通信库及WPF的简单实践
  • 初学PADS使用技巧笔记(也许会继续更新)
  • IDEA单元测试插件 SquareTest 延长试用期权限
  • 【社论】鸿蒙破壁,向最难处攻坚
  • 年内首次存款利率下调启动:3年期、5年期均下调0.25个百分点
  • 两名游客刻划八达岭长城,被拘5日罚200元
  • AI快速迭代带来知识焦虑,褚君浩院士提出“四维能力模型”
  • 波兰总统选举第一轮投票结束,出口民调显示将进入第二轮投票
  • 男子聚餐饮酒后身亡,同桌3人被判赔偿近20万元