首页 > 其他分享 >Rust 学习笔记

Rust 学习笔记

时间:2022-09-18 17:33:32浏览次数:100  
标签:mut guess Ordering number 笔记 学习 secret println Rust

学习资料

rust 程序语言

英文的代码版本是2021年,中文的是2018年,最好结合着看

用Rust实现一个猜数游戏

use std::io;
use rand::Rng;
use std::cmp::Ordering;

fn main() {
    println!("Guess the number!");
    
    let secret_number = rand::thread_rng().gen_range(1..=100);
    println!("The secret number is: {secret_number}");

    loop { // 无限循环
        println!("Please input your guess.");

        let mut guess = String::new(); // 定义一个可变的变量,mut表示可变,rust默认变量不可变
    
        io::stdin().read_line(&mut guess) // 从标准读入中读字符串到guess中
            .expect("Failed to read line"); // 如果失败打印相应的exception信息
    
        let guess: u32 = match guess.trim().parse() {// 这里是做强制类型转换,将guess从string类型转换到integer类型
            Ok(num) => num,
            Err(_) => {
                println!("Please input a number!");
                continue; // 如果不加continue这句会报错·
            },
        };
        
        println!("Your guessd: {guess}");
    
        match guess.cmp(&secret_number) { // 比较两个integer类型的大小
            Ordering::Less => println!("Too Small~"),
            Ordering::Greater => println!("Too Big~"),
            Ordering::Equal => {
                println!("You guess correct!!!");
                break; // 跳出循环,结束程序
            }
        }
    }

}

标签:mut,guess,Ordering,number,笔记,学习,secret,println,Rust
From: https://www.cnblogs.com/VanHa0101/p/16705296.html

相关文章

  • markdown学习
    markdown学习标题三级标题四级标题字体Hello,World!Hello,World!Hello,World!Hello,World! Hello,World!引用选择狂神说java分割线 图片 超链接点击跳转到......
  • 2022-2023-1 20221313《计算机基础与程序设计》第三周学习总结
    班级的链接:https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP作业要求的链接:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK03作业的目标:学习《计算机基础与程......
  • Go 学习(一) : Get started with Go
    安装gohttps://go.dev/doc/install安装以后命令行执行goversion然后随便创建一个文件,比如hello.gopackagemainimport"fmt"funcmain(){ fmt.Printl......
  • 操作系统学习笔记13 | 目录与文件系统
    本文完成磁盘管理4层抽象中的最后一层抽象:目录与文件系统。达成的效果是整个磁盘抽象为我们日常所熟悉的目录树,这个树应当能够适配不同的操作系统(是一个独立子系统),通过目......
  • canvas 学习笔记
    1.利用上下文对象进行绘制画笔varcanvas=canvas.getContext('2d')2.绘制路径canvas.rect(30,30,300,300)3.填充canvas.fillStyle('#ddd')canvas.fill()4描边canva......
  • 20201317-第10章学习笔记
    第十章shell编程程序设计语言必备的要素和技能程序设计语言的含义程序设计语言是用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的......
  • 学习编程一
    大数字用BigInteger浮点数用BigdecimalString.valueof(a)//将a转换成字符串的形式,对题目进行存储+:add()-:subtract()*:multiply()/:divide()输出带有小数点*100.0.nextLine()/......
  • 《C++ Primer Plus 学习笔记》目录
    本篇为随笔《C++PrimerPlus学习笔记》的目录第1章预备知识第2章开始学习C++第3章处理数据第4章复合类型第5章循环和表达式第6章分支语句和逻辑运算符第7章......
  • 《Unix/Linux系统编程》第十章读书笔记
    自学教材第10章学习笔记一、任务内容自学教材第10章,提交学习笔记(10分)大家学习过Python,C,Java等语言,总结一下一门程序设计语言有哪些必备的要素和技能?这些要素和技能在......
  • opencv学习笔记(3)
    opencv的色彩空间一、RGB与BGRRGB即red(红色)、green(绿色)、blue(蓝色)。RGB与BGR只是三个通道的顺序不同,其他并无差别,三个通道值的范围是0~255。在opencv中的色彩空间默认为B......