Bird
Raised Fist0
Rustprogramming~5 mins

Mutable variables in Rust - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does it mean when a variable is mutable in Rust?
A mutable variable in Rust means you can change its value after it is first set. You declare it with mut before the variable name.
Click to reveal answer
beginner
How do you declare a mutable variable named count with the value 5 in Rust?
You write: <code>let mut count = 5;</code> This means <code>count</code> can be changed later.
Click to reveal answer
beginner
What happens if you try to change a variable that is not mutable in Rust?
Rust will give a compile-time error because variables are immutable by default. You must declare them as mutable to change their value.
Click to reveal answer
intermediate
Why does Rust make variables immutable by default?
Immutability helps prevent bugs by avoiding unexpected changes. It makes programs safer and easier to understand.
Click to reveal answer
beginner
Show an example of changing a mutable variable's value in Rust.
Example:<br><code>let mut score = 10;<br>score = 20;<br>println!("Score is {}", score);</code><br>This prints: <code>Score is 20</code>
Click to reveal answer
How do you declare a mutable variable in Rust?
Avar variable_name = value;
Blet mut variable_name = value;
Cmutable variable_name = value;
Dlet variable_name = mut value;
What is the default mutability of variables in Rust?
AMutable
BDepends on the type
CImmutable
DMutable only for integers
What error occurs if you try to change an immutable variable?
ACompile-time error
BWarning only
CNo error, it works fine
DRuntime error
Why is immutability preferred by default in Rust?
ATo prevent unexpected changes and bugs
BTo make code run faster
CBecause mutable variables are not supported
DTo save memory
Which of the following is a correct way to change a mutable variable's value?
Alet x = mut 5; x = 10;
Blet x = 5; x = 10;
Clet mut x = 5; mut x = 10;
Dlet mut x = 5; x = 10;
Explain what mutable variables are in Rust and how to declare them.
Think about how you can change a variable's value after setting it.
You got /3 concepts.
    Describe why Rust makes variables immutable by default and the benefits of this choice.
    Consider how fixing values helps avoid mistakes.
    You got /4 concepts.

      Practice

      (1/5)
      1. What keyword do you use in Rust to make a variable mutable?
      easy
      A. let
      B. var
      C. change
      D. mut

      Solution

      1. Step 1: Understand variable declaration in Rust

        Rust uses let to declare variables, but by default they are immutable.
      2. Step 2: Identify how to make variables mutable

        Adding mut after let makes the variable mutable.
      3. Final Answer:

        mut -> Option D
      4. Quick Check:

        Use let mut for mutable variables [OK]
      Hint: Remember: let mut makes variables changeable [OK]
      Common Mistakes:
      • Using 'var' instead of 'mut'
      • Forgetting 'mut' and expecting change
      • Using 'let' alone for mutable variables
      2. Which of the following is the correct syntax to declare a mutable integer variable named x with value 5 in Rust?
      easy
      A. let mut x = 5;
      B. var mut x = 5;
      C. mut let x = 5;
      D. let x = 5;

      Solution

      1. Step 1: Recall correct order of keywords

        In Rust, let comes first, then mut to mark mutability.
      2. Step 2: Check each option's syntax

        let mut x = 5; uses let mut x = 5; which is correct. Others have wrong order or invalid keywords.
      3. Final Answer:

        let mut x = 5; -> Option A
      4. Quick Check:

        Correct syntax is let mut variable = value; [OK]
      Hint: Always write let mut in that order [OK]
      Common Mistakes:
      • Swapping 'mut' and 'let'
      • Using 'var' instead of 'let'
      • Omitting 'mut' when variable changes
      3. What will be the output of this Rust code?
      fn main() {
          let mut count = 1;
          count = count + 2;
          println!("{}", count);
      }
      medium
      A. 3
      B. 2
      C. 1
      D. Compilation error

      Solution

      1. Step 1: Understand variable initialization and mutation

        The variable count starts at 1 and is mutable.
      2. Step 2: Calculate the new value after addition

        Adding 2 to 1 gives 3, so count becomes 3.
      3. Final Answer:

        3 -> Option A
      4. Quick Check:

        Mutable variable updated correctly outputs 3 [OK]
      Hint: Mutable lets you add and update variable values [OK]
      Common Mistakes:
      • Expecting original value without mutation
      • Thinking code causes error without 'mut'
      • Confusing output with variable name
      4. Identify the error in this Rust code snippet:
      fn main() {
          let x = 10;
          x = 20;
          println!("{}", x);
      }
      medium
      A. Missing semicolon after println!
      B. Variable x is not declared
      C. Cannot assign twice to immutable variable x
      D. Incorrect println! syntax

      Solution

      1. Step 1: Check variable mutability

        Variable x is declared without mut, so it is immutable.
      2. Step 2: Analyze reassignment attempt

        Assigning x = 20; tries to change an immutable variable, causing a compile error.
      3. Final Answer:

        Cannot assign twice to immutable variable x -> Option C
      4. Quick Check:

        Immutable variables cannot be reassigned [OK]
      Hint: Add mut to allow variable reassignment [OK]
      Common Mistakes:
      • Ignoring need for 'mut' to reassign
      • Thinking println! needs semicolon error
      • Assuming variable is undeclared
      5. You want to create a counter that increases by 1 every time a function is called. Which Rust code correctly uses a mutable variable to achieve this?
      fn main() {
          let mut counter = 0;
          increment(&mut counter);
          increment(&mut counter);
          println!("{}", counter);
      }
      
      fn increment(count: &mut i32) {
          *count += 1;
      }
      hard
      A. Code fails because counter is immutable
      B. Code compiles and prints 2
      C. Code prints 0 because counter is not updated
      D. Code fails due to wrong function signature

      Solution

      1. Step 1: Check mutability of counter

        Counter is declared mutable with let mut counter = 0;.
      2. Step 2: Understand function parameter and mutation

        Function increment takes a mutable reference and increases the value by 1 each call.
      3. Step 3: Count increments and final output

        Called twice, counter increases from 0 to 2, then printed.
      4. Final Answer:

        Code compiles and prints 2 -> Option B
      5. Quick Check:

        Mutable variable with mutable reference updates correctly [OK]
      Hint: Use let mut and mutable references to update variables [OK]
      Common Mistakes:
      • Forgetting 'mut' on variable or reference
      • Passing immutable reference to function
      • Expecting counter to update without mutable reference
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard