Rust入门2——随机数

文章目录

简单列出两个Rust的小例子

一、生成随机数

在Cargo.toml的dependencies中引入rand,指定rand的版本

rust 复制代码
[dependencies]  
rand = "^0.3.14"

之后在主函数中调用rand函数,生成随机数

rust 复制代码
use rand::Rng;  
  
fn main() {  
    println!("Hello, world!");  
    println!("猜测一个数");  
    let secretNum = rand::thread_rng().gen_range(1,101);  
    println!("生成的数字是{}",secretNum);  
}

二、比较两个数相等

match表达式,类似switch。cmp用于比较,=>可以认为是case

rust 复制代码
use std::io::stdin;  
use std::cmp::Ordering;  
use rand::Rng;  
  
  
fn main() {  
    println!("Hello, world!");  
    println!("猜测一个数");  
    //mut代表该值可变,new方法是String的关联函数,类似java中的静态方法  
    let mut number = String::new();  
    stdin().read_line(&mut number).expect("无法读取行");  
    let secretNum = rand::thread_rng().gen_range(1,101);  
    println!("生成的数字是{}",secretNum);  
    println!("你猜的数字是:{}",number);  
    //将number由字符串转换为u32类型  
    let number: u32 = number.trim().parse().expect("请输入数字");  
    match number.cmp(&secretNum) {  
        Ordering::Less=>println!("小了"),  
        Ordering::Equal=>println!("等于"),  
        Ordering::Greater=>println!("大于"),  
    }  
}
相关推荐
fl17683119 分钟前
基于python的天气预报系统设计和可视化数据分析源码+报告
开发语言·python·数据分析
ACP广源盛1392462567342 分钟前
(ACP广源盛)GSV6172---MIPI/LVDS 信号转换为 Type-C/DisplayPort 1.4/HDMI 2.0 并集成嵌入式 MCU
c语言·开发语言·单片机·嵌入式硬件·音视频
不穿格子的程序员1 小时前
从零开始刷算法-栈-括号匹配
java·开发语言·
雪域迷影1 小时前
C#中通过get请求获取api.open-meteo.com网站的天气数据
开发语言·http·c#·get
yue0081 小时前
C#类继承
java·开发语言·c#
Want5951 小时前
Python汤姆猫
开发语言·python
Larry_Yanan2 小时前
QML学习笔记(五十)QML与C++交互:QML中单例C++对象
开发语言·c++·笔记·qt·学习·ui·交互
凯芸呢2 小时前
Java中的数组(续)
java·开发语言·数据结构·算法·青少年编程·排序算法·idea
竹竹零2 小时前
JacksonUtil--序列化与反序列化
java·开发语言·windows
sheji34162 小时前
【开题答辩全过程】以 基于Java的旅游网站的设计与开发为例,包含答辩的问题和答案
java·开发语言·旅游