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

7-8 超速判断 (10 分)

刷题学rust(三)——rust分支语句
这道题只需要一个简单的分支,非常简单的就可以解决,无需多言
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 分)

刷题学rust(三)——rust分支语句
看到这个题我的第一反应是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型条件句。

上一篇:【论文向】Sequence to Sequence Learning with Neural Networks


下一篇:英文垃圾邮件分类深度学习篇——CNN、RNN、LSTM