35道Rust面试题

这套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面试题”

猜你喜欢

转载自blog.csdn.net/lonewolf79218/article/details/133799982