Bird
Raised Fist0
Cprogramming~5 mins

Switch statement - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a switch statement used for in C?
A switch statement lets you choose between many options based on the value of a variable. It is like a cleaner way to write many if-else checks for the same variable.
Click to reveal answer
beginner
How do you write a basic switch statement syntax in C?
You write switch (variable) { case value1: // code; break; case value2: // code; break; default: // code; }. The case labels check the variable's value, and break stops the switch from running other cases.
Click to reveal answer
intermediate
What happens if you forget the break statement in a case?
If you forget break, the program will continue running the next case code too. This is called "fall-through" and can cause bugs if not intended.
Click to reveal answer
beginner
What is the purpose of the default case in a switch?
The default case runs if none of the other case values match the variable. It acts like an else to handle unexpected values.
Click to reveal answer
intermediate
Can switch statements in C work with strings or floating-point numbers?
No, switch in C only works with integer types like int, char, or enums. It cannot directly handle strings or floats.
Click to reveal answer
What keyword do you use to stop execution from falling through to the next case in a switch?
Astop
Bexit
Cbreak
Dreturn
Which of these types can be used in a switch statement in C?
Astring
Bfloat
Cdouble
Dint
What happens if no case matches and there is no default case?
AThe program crashes
BThe switch does nothing and continues after it
CThe first case runs anyway
DAn error is shown
What is the role of the default case in a switch?
ARuns if no other case matches
BRuns before any case
CStops the switch
DIs required for switch to work
Which of these is a correct switch statement start?
Aswitch (x) {
Bswitch x {
Cswitch x() {
Dswitch (x);
Explain how a switch statement works and why you might use it instead of multiple if-else statements.
Think about choosing one path from many options.
You got /4 concepts.
    Describe what happens if you omit the break statement in a switch case and why it matters.
    What happens when you don't tell the program to stop?
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a switch statement in C?
      easy
      A. To define a function
      B. To repeat a block of code multiple times
      C. To select one action from multiple choices based on a variable's value
      D. To declare variables

      Solution

      1. Step 1: Understand the role of switch

        A switch statement chooses one path among many based on a variable's value.
      2. Step 2: Compare with other options

        Loops repeat code, functions define reusable blocks, and declarations create variables, which are different from switch's purpose.
      3. Final Answer:

        To select one action from multiple choices based on a variable's value -> Option C
      4. Quick Check:

        Switch = Choice selection [OK]
      Hint: Switch picks one case based on value, like a menu choice [OK]
      Common Mistakes:
      • Confusing switch with loops
      • Thinking switch defines functions
      • Believing switch declares variables
      2. Which of the following is the correct syntax to start a switch statement in C?
      easy
      A. switch (variable) { case 1: ... }
      B. switch variable { case 1: ... }
      C. switch [variable] { case 1: ... }
      D. switch variable: case 1: ...

      Solution

      1. Step 1: Recall switch syntax

        The correct syntax uses parentheses around the variable: switch(variable) { ... }
      2. Step 2: Check options

        Only switch (variable) { case 1: ... } uses parentheses correctly; others miss parentheses or use wrong brackets.
      3. Final Answer:

        switch (variable) { case 1: ... } -> Option A
      4. Quick Check:

        Switch needs parentheses around variable [OK]
      Hint: Remember: switch(variable) uses parentheses, not brackets or none [OK]
      Common Mistakes:
      • Omitting parentheses around variable
      • Using square brackets instead of parentheses
      • Using colon instead of braces
      3. What will be the output of this C code?
      int x = 2;
      switch (x) {
        case 1:
          printf("One\n");
          break;
        case 2:
          printf("Two\n");
          break;
        default:
          printf("Other\n");
      }
      medium
      A. One
      B. Other
      C. No output
      D. Two

      Solution

      1. Step 1: Identify the switch variable value

        The variable x is 2, so the switch checks case 2.
      2. Step 2: Match case and output

        Case 2 matches, so it prints "Two" and then breaks to stop further checks.
      3. Final Answer:

        Two -> Option D
      4. Quick Check:

        Case 2 matches x=2, prints "Two" [OK]
      Hint: Match variable value to case, print and break [OK]
      Common Mistakes:
      • Forgetting break causes fall-through
      • Choosing default when case matches
      • Confusing case numbers
      4. Find the error in this switch statement:
      int n = 3;
      switch (n) {
        case 1:
          printf("One\n");
        case 2:
          printf("Two\n");
          break;
        default:
          printf("Default\n");
      }
      medium
      A. Missing break after case 1
      B. Missing default case
      C. Wrong switch syntax
      D. Variable n not declared

      Solution

      1. Step 1: Check each case for break

        Case 1 lacks a break, so if matched, it would fall through to case 2.
      2. Step 2: Understand impact

        Missing break can cause unintended multiple prints; adding break after case 1 fixes this.
      3. Final Answer:

        Missing break after case 1 -> Option A
      4. Quick Check:

        Each case needs break to stop fall-through [OK]
      Hint: Always add break after each case unless fall-through wanted [OK]
      Common Mistakes:
      • Ignoring missing break causes fall-through
      • Thinking default is mandatory
      • Assuming variable declaration error
      5. You want to write a switch statement that prints "Weekend" for cases 6 and 7, and "Weekday" for cases 1 to 5. Which code correctly does this?
      hard
      A. switch(day) { case 1: printf("Weekday\n"); break; case 2: printf("Weekday\n"); break; case 3: printf("Weekend\n"); break; case 4: printf("Weekday\n"); break; case 5: printf("Weekday\n"); break; case 6: printf("Weekend\n"); break; case 7: printf("Weekend\n"); break; }
      B. switch(day) { case 1: case 2: case 3: case 4: case 5: printf("Weekday\n"); break; case 6: case 7: printf("Weekend\n"); break; default: printf("Invalid\n"); }
      C. switch(day) { case 1: case 2: case 3: case 4: case 5: printf("Weekend\n"); break; case 6: case 7: printf("Weekday\n"); break; }
      D. switch(day) { case 1: case 2: case 3: case 4: case 5: printf("Weekday\n"); case 6: case 7: printf("Weekend\n"); break; }

      Solution

      1. Step 1: Group cases for same output

        Cases 1 to 5 print "Weekday", so group them before one printf and break.
      2. Step 2: Group weekend cases

        Cases 6 and 7 print "Weekend" similarly grouped with break.
      3. Step 3: Check default case

        switch(day) { case 1: case 2: case 3: case 4: case 5: printf("Weekday\n"); break; case 6: case 7: printf("Weekend\n"); break; default: printf("Invalid\n"); } includes default for invalid days, which is good practice.
      4. Final Answer:

        Groups weekday cases 1-5 and weekend cases 6-7 with breaks and default -> Option B
      5. Quick Check:

        Group cases with same output, add break after each group [OK]
      Hint: Group cases with same output, add break after group [OK]
      Common Mistakes:
      • Printing wrong labels for grouped cases
      • Missing breaks causing fall-through
      • Not handling default case
      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