其他分享
首页 > 其他分享> > 刷题学rust(三)——rust分支语句

刷题学rust(三)——rust分支语句

作者:互联网

7-8 超速判断 (10 分)

在这里插入图片描述
这道题只需要一个简单的分支,非常简单的就可以解决,无需多言
AC代码:

use std::io;

fn main() {
    let mut input = String::new();

    io::stdin()
        .read_line(&mut input)
        .unwrap();
        let mut s = input.trim().split(' ');
        let a_str = s.next().unwrap();
        let mut a: i32 = a_str.parse().unwrap();
        if (a > 60) 
        {
            println!("Speed: {} - Speeding",a);
        } 
        else 
        {
            println!("Speed: {} - OK",a);
        }
}

7-9 用天平找小球 (10 分)

在这里插入图片描述
看到这个题我的第一反应是hash_map,不过这也太小题大做了吧。我们只需要简单的写三个分支就可以解决这个问题
AC代码:

use std::io;

fn main() {
    let mut input = String::new();

    io::stdin()
        .read_line(&mut input)
        .unwrap();
        let mut s = input.trim().split(' ');
        let a_str = s.next().unwrap();
        let a: i32 = a_str.parse().unwrap();
        let b_str = s.next().unwrap();
        let b : i32 = b_str.parse().unwrap();
        let c_str = s.next().unwrap();
        let c : i32 = c_str.parse().unwrap();
        if a==b
        {
            println!("C")
        }
        else if b==c
        {
            println!("A")
        }
        else
        {
            println!("B")
        }
}

大家有没有发现这两道题的分支不太一样
第一道题我的if判断条件加了括号,实际上,这样编译器会有一个warning。
最好的写法时第二种,不需要括号,只需要一个bool型条件句。

标签:语句,mut,unwrap,let,str,println,input,rust,刷题
来源: https://blog.csdn.net/Charlesix59/article/details/117557023