Bird
Raised Fist0
Goprogramming~10 mins

Switch statement in Go - 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 variable day.

Go
switch [1] {
case "Monday":
    println("Start of the week")
}
Drag options to blanks, or click blank then click option'
ADay
Bdays
Cday
DweekDay
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using a variable name that does not exist like days or Day.
Forgetting to put the variable after switch.
2fill in blank
medium

Complete the code to print Weekend when day is Saturday or Sunday.

Go
switch day {
case "Saturday", [1]:
    println("Weekend")
default:
    println("Weekday")
}
Drag options to blanks, or click blank then click option'
A"Monday"
B"Sunday"
C"Friday"
D"Tuesday"
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using a weekday like Monday or Friday instead of Sunday.
Forgetting the quotes around the day names.
3fill in blank
hard

Fix the error in the switch statement to correctly print the message for day.

Go
switch day {
case "Monday":
    println("Start of the week")
case [1]:
    println("Midweek")
default:
    println("Other day")
}
Drag options to blanks, or click blank then click option'
AWednesday
B"Tuesday"
C"Friday"
D"Wednesday"
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Writing case value without quotes causing syntax error.
Using a wrong day name.
4fill in blank
hard

Fill both blanks to create a switch that prints Early week for Monday or Tuesday.

Go
switch [1] {
case [2]:
    println("Early week")
default:
    println("Other day")
}
Drag options to blanks, or click blank then click option'
Aday
B"Monday", "Tuesday"
C"Wednesday", "Thursday"
Dweekday
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Using wrong variable name in switch.
Using wrong days in case.
5fill in blank
hard

Fill all three blanks to create a switch that prints the correct message for score.

Go
switch {
case score [1] 90:
    println("Excellent")
case score [2] 60:
    println("Pass")
default:
    println([3])
}
Drag options to blanks, or click blank then click option'
A>=
C"Fail"
D<
Attempts:
3 left
๐Ÿ’ก Hint
Common Mistakes
Mixing up comparison operators.
Forgetting quotes around the string in default.

Practice

(1/5)
1. What does a switch statement do in Go?
easy
A. It selects one case to run based on a value.
B. It repeats code multiple times like a loop.
C. It defines a new function.
D. It declares a variable.

Solution

  1. Step 1: Understand the purpose of switch

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

    Loops repeat code, functions define behavior, variables store data. Switch picks cases.
  3. Final Answer:

    It selects one case to run based on a value. -> Option A
  4. Quick Check:

    Switch = Select case [OK]
Hint: Switch picks one matching case to run [OK]
Common Mistakes:
  • Confusing switch with loops
  • Thinking switch defines functions
  • Believing switch declares variables
2. Which of the following is the correct syntax for a basic switch statement in Go?
easy
A. switch (x) { case 1: fmt.Println("One") default: fmt.Println("Other") }
B. switch x { case 1: fmt.Println("One") default: fmt.Println("Other") }
C. switch x: case 1: fmt.Println("One") default: fmt.Println("Other")
D. switch x { case 1 => fmt.Println("One") default => fmt.Println("Other") }

Solution

  1. Step 1: Recall Go switch syntax

    Go uses switch variable { case value: ... default: ... } without parentheses.
  2. Step 2: Check each option

    switch x { case 1: fmt.Println("One") default: fmt.Println("Other") } matches correct syntax. switch (x) { case 1: fmt.Println("One") default: fmt.Println("Other") } wrongly uses parentheses. switch x: case 1: fmt.Println("One") default: fmt.Println("Other") uses colon after switch. switch x { case 1 => fmt.Println("One") default => fmt.Println("Other") } uses => which is invalid.
  3. Final Answer:

    switch x { case 1: fmt.Println("One") default: fmt.Println("Other") } -> Option B
  4. Quick Check:

    Correct syntax = switch x { case 1: fmt.Println("One") default: fmt.Println("Other") } [OK]
Hint: No parentheses around switch variable in Go [OK]
Common Mistakes:
  • Adding parentheses around switch variable
  • Using colon after switch keyword
  • Using => instead of colon in cases
3. What will be the output of this Go code?
package main
import "fmt"
func main() {
  x := 2
  switch x {
  case 1:
    fmt.Println("One")
  case 2:
    fmt.Println("Two")
  case 3:
    fmt.Println("Three")
  default:
    fmt.Println("Other")
  }
}
medium
A. Two
B. Three
C. One
D. Other

Solution

  1. Step 1: Identify the switch variable and value

    The variable x is 2.
  2. Step 2: Match the case with value 2

    The case 2 matches and prints "Two".
  3. Final Answer:

    Two -> Option A
  4. Quick Check:

    Switch x=2 prints "Two" [OK]
Hint: Match switch value to case label [OK]
Common Mistakes:
  • Choosing default instead of matching case
  • Confusing case numbers
  • Ignoring switch variable value
4. Find the error in this Go switch code:
package main
import "fmt"
func main() {
  x := 3
  switch x {
  case 1
    fmt.Println("One")
  case 2:
    fmt.Println("Two")
  default:
    fmt.Println("Other")
  }
}
medium
A. fmt.Println syntax error
B. Missing default case
C. Switch variable must be string
D. Missing colon after case 1

Solution

  1. Step 1: Check case syntax

    Each case must end with a colon (:). Here, case 1 misses the colon.
  2. Step 2: Verify other parts

    Default case exists, switch variable can be int, fmt.Println is correct.
  3. Final Answer:

    Missing colon after case 1 -> Option D
  4. Quick Check:

    Case syntax requires colon [OK]
Hint: Each case must end with a colon (:) [OK]
Common Mistakes:
  • Omitting colon after case
  • Thinking default is mandatory
  • Assuming switch variable must be string
5. How can you write a Go switch statement that prints "Weekend" for Saturday and Sunday, and "Weekday" for other days (1=Monday, 7=Sunday)?
hard
A. switch day { case day == 6 || day == 7: fmt.Println("Weekend") default: fmt.Println("Weekday") }
B. switch day { case 6: fmt.Println("Weekend") case 7: fmt.Println("Weekday") default: fmt.Println("Weekday") }
C. switch day { case 6, 7: fmt.Println("Weekend") default: fmt.Println("Weekday") }
D. switch day { case 6: fmt.Println("Weekend") case 7: fmt.Println("Sunday") default: fmt.Println("Weekday") }

Solution

  1. Step 1: Group weekend days in one case

    Using case 6, 7: groups Saturday and Sunday together.
  2. Step 2: Use default for other days

    Default prints "Weekday" for days 1 to 5.
  3. Final Answer:

    switch day { case 6, 7: fmt.Println("Weekend") default: fmt.Println("Weekday") } -> Option C
  4. Quick Check:

    Multiple values in one case = switch day { case 6, 7: fmt.Println("Weekend") default: fmt.Println("Weekday") } [OK]
Hint: Use commas to group cases in Go switch [OK]
Common Mistakes:
  • Separating weekend days into different cases with wrong output
  • Using logical OR inside switch expression incorrectly
  • Missing default case for weekdays
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