Bird
Raised Fist0
Cprogramming~10 mins

Switch statement - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to start a switch statement on the variable choice.

C
switch([1]) {
    case 1:
        printf("One\n");
        break;
    default:
        printf("Other\n");
}
Drag options to blanks, or click blank then click option'
Avalue
Boption
Cinput
Dchoice
Attempts:
3 left
💡 Hint
Common Mistakes
Using a variable name that is not declared.
Forgetting the parentheses after switch.
2fill in blank
medium

Complete the code to print "Two" when the variable num equals 2.

C
switch(num) {
    case [1]:
        printf("Two\n");
        break;
    default:
        printf("Other\n");
}
Drag options to blanks, or click blank then click option'
A1
B4
C2
D3
Attempts:
3 left
💡 Hint
Common Mistakes
Using the wrong number in the case label.
Forgetting the colon after the case value.
3fill in blank
hard

Fix the error in the switch statement to correctly handle the default case.

C
switch(option) {
    case 1:
        printf("One\n");
        break;
    default[1]:
        printf("Unknown\n");
}
Drag options to blanks, or click blank then click option'
A:
B;
C,
D.
Attempts:
3 left
💡 Hint
Common Mistakes
Using a semicolon after default instead of a colon.
Omitting the colon after default.
4fill in blank
hard

Fill both blanks to complete the switch statement that prints "Zero" or "Positive" based on num.

C
switch(num) {
    case [1]:
        printf("Zero\n");
        break;
    case [2]:
        printf("Positive\n");
        break;
    default:
        printf("Negative\n");
}
Drag options to blanks, or click blank then click option'
A0
B1
C2
D-1
Attempts:
3 left
💡 Hint
Common Mistakes
Using negative numbers for positive cases.
Forgetting the break statements.
5fill in blank
hard

Fill all three blanks to create a switch that prints the day name for day values 1, 2, or 3.

C
switch([1]) {
    case [2]:
        printf("Monday\n");
        break;
    case [3]:
        printf("Tuesday\n");
        break;
    default:
        printf("Other day\n");
}
Drag options to blanks, or click blank then click option'
Aday
B1
C2
D3
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong variable names in switch.
Mixing up case numbers.

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