这套Rust面试题包括了填空题、判断题、连线题和编码题等题型。
选择题
1 ,下面哪个是打印变量language的正确方法?
A,println("{}", language);
B,println(language);
C,println!("{}", language);
D,println!(language);
2,下面哪个语句正确地修改了变量值?
A,fruit = "apple"; fruit = "orange";
B,let fruit = "apple"; fruit = "orange";
C,let mut fruit = "apple"; fruit = "orange";
D,let fruit:&str = "apple"; fruit = "orange";
3,下面代码的输出是什么?
fn main(){let a = 3;println!("{}", !a);
}
A,-3
B,-4
C,3
D,4
4,下面Rust代码的输出是什么?
fn main() {const L:i32 = 1; println!("{}", L << 1 & 1);
}
A,1
B,0
C,-1
D,2
5,三个操作数a, b, c赋值为7。
fn main(){let a = 7;let b = 7;let c = 7;
}
我们希望应用位运算,使输出相同。
a Operator b Operator c
注意,在整个表达式中使用相同的位操作符,即,如果我们使用AND,则a & b & c。
记住上述内容,确定在表达式中使用以下哪个位操作符会产生相同的输出?
A,AND, OR, NOT
B,AND, OR, XOR
C,AND, Left shift by 1,XOR
D,XOR, OR, Right shift by 2
6,下面代码的输出是什么?
fn main() { let course = ("programming", "beginner");if let ("gamming", c) = course {println!("{}", c);} else {println!("Value unmatched");}
}
A,beginner
B,programming
C,Values unmatched
D,Error
7,下面代码的输出是什么?
fn main() {if (1 < 0) && (0 < -1) {println!("Pass");}else if (1 > 0) | false {println!("Fail");}else{println!("Educative");}
}
A,Educative
B,Fail
C,Pass
D,Error
8,跟踪下列程序的输出。
fn main() {let mut i = 1;loop {print!("{}", i);if i == 5 {break;}i = i + 1; }
}
A,12345
B,1234
C,Error
D,None of the above
9,跟踪下列程序的输出:
fn main() {for i in 0..5 {if i == 2 {continue;}print!("{}", i);}
}
A,01234
B,0134
C,012345
D,01345
10,什么使main成为一个特殊的函数?
A,它是程序的入口点
B,它有一个特定的签名
C,它没有具体的签名;它可以像普通函数一样接受参数
D,A和B都有
获取完整Rust面试题,请关注公众号:coding到灯火阑珊
后台发送消息:“Rust面试题”