📖 Scenario: You want to create a simple Go program that prints a friendly greeting to the screen. This is like saying hello to a new friend using code.
🎯 Goal: Build a Go program that prints the message Hello, Go! to the console.
📋 What You'll Learn
Create a main package
Write a main function
Use fmt.Println to print the greeting
Print exactly Hello, Go!
💡 Why This Matters
🌍 Real World
Every Go program starts with this structure. Printing messages helps you check your program works.
💼 Career
Knowing how to write a basic Go program is essential for software development jobs using Go.
Progress0 / 4 steps
1
Create the main package
Write package main at the top of your Go file to define the package.
Go
Hint
Every Go program starts with a package declaration. Use package main for executable programs.
2
Add the main function
Write a func main() function below the package line to start your program.
Go
Hint
The main function is where your program begins running.
3
Import the fmt package
Add an import statement to include the fmt package above the main function.
Go
Hint
The fmt package lets you print text to the screen.
4
Print the greeting message
Inside the main function, write fmt.Println("Hello, Go!") to print the greeting.
Go
Hint
Use fmt.Println with the exact text Hello, Go! inside quotes.
Practice
(1/5)
1. What is the purpose of the main function in a Go program?
easy
A. It is the starting point where the program begins execution.
B. It defines a package for the program.
C. It imports external libraries.
D. It declares variables for the program.
Solution
Step 1: Understand the role of main function
The main function is special in Go; it is where the program starts running.
Step 2: Differentiate from other parts
Packages define code grouping, imports bring libraries, and variables store data, but none start execution.
Final Answer:
It is the starting point where the program begins execution. -> Option A
Quick Check:
Program starts at main() -> D [OK]
Hint: Remember: main() is the program's entry point [OK]
Common Mistakes:
Confusing package declaration with program start
Thinking imports start the program
Assuming variables control program flow
2. Which of the following is the correct way to print "Hello, Go!" in a Go program?
easy
A. fmt.Println("Hello, Go!")
B. print("Hello, Go!")
C. fmt.print("Hello, Go!")
D. console.log("Hello, Go!")
Solution
Step 1: Identify the correct print function in Go
Go uses the fmt package with Println to print with a newline.
Step 2: Check syntax correctness
fmt.Println("Hello, Go!") is correct; others are either wrong function names or from other languages.
Final Answer:
fmt.Println("Hello, Go!") -> Option A
Quick Check:
Use fmt.Println() to print lines in Go [OK]
Hint: Use fmt.Println() for printing with newline [OK]
Common Mistakes:
Using fmt.print instead of fmt.Println
Using print() which is not standard in Go
Using console.log from JavaScript
3. What will be the output of this Go program?
package main
import "fmt"
func main() {
fmt.Println("Welcome to Go!")
}
medium
A. package main
import "fmt"
func main() {
fmt.Println("Welcome to Go!")
}
B. fmt.Println("Welcome to Go!")
C. Welcome to Go!
D. Error: missing main function
Solution
Step 1: Understand program structure
The program imports fmt and defines main(), which prints the string.
Step 2: Identify output of fmt.Println
It prints the string exactly: Welcome to Go! with a newline.
Final Answer:
Welcome to Go! -> Option C
Quick Check:
fmt.Println prints string output [OK]
Hint: fmt.Println prints the string content, not code [OK]
Common Mistakes:
Confusing code with output
Expecting code to print itself
Thinking main function is missing
4. Identify the error in this Go program:
package main
import "fmt"
func main() {
fmt.Println("Hello, world!"
}
medium
A. Missing import statement
B. Incorrect function name
C. Missing package declaration
D. Missing closing parenthesis in fmt.Println call
Solution
Step 1: Check syntax of fmt.Println
The call to fmt.Println is missing a closing parenthesis at the end.
Step 2: Verify other parts
Package and import are present, function name is correct, so no errors there.
Final Answer:
Missing closing parenthesis in fmt.Println call -> Option D
Quick Check:
Check parentheses in function calls [OK]
Hint: Count opening and closing parentheses carefully [OK]
Common Mistakes:
Forgetting closing parenthesis in function calls
Assuming missing import or package causes this error
Misnaming main function
5. You want to write a Go program that prints "Hello" on one line and "World" on the next line. Which code snippet achieves this correctly?
hard
A. package main
import "fmt"
func main() {
fmt.Print("Hello\nWorld")
}
B. package main
import "fmt"
func main() {
fmt.Println("Hello")
fmt.Println("World")
}
C. package main
import "fmt"
func main() {
fmt.Println("Hello\nWorld")
}
D. package main
import "fmt"
func main() {
fmt.Print("Hello")
fmt.Print("World")
}
Solution
Step 1: Understand printing with new lines
fmt.Println prints text and adds a newline automatically.
Step 2: Check each option's output
A: Two fmt.Println calls print "Hello" on one line and "World" on the next. Correct. B: fmt.Print("Hello\nWorld") prints "Hello\nWorld" (with actual newline) on one line. C: fmt.Println("Hello\nWorld") prints "Hello\nWorld" (with actual newline) followed by newline, so output is two lines. D: Two fmt.Print calls print "HelloWorld" on one line.
Final Answer:
package main
import "fmt"
func main() {
fmt.Println("Hello")
fmt.Println("World")
} -> Option B
Quick Check:
Use fmt.Println twice for separate lines [OK]
Hint: Use fmt.Println for each line to print separately [OK]
Common Mistakes:
Using fmt.Print without newline causes joined output
Expecting \n inside fmt.Println to create new line
Confusing fmt.Print and fmt.Println behavior
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.