mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-12 05:33:04 +08:00
42 lines
1.1 KiB
Go
42 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"bufio"
|
|
)
|
|
|
|
func main() {
|
|
inputReader := bufio.NewReader(os.Stdin)
|
|
fmt.Println("Please enter your name:")
|
|
input, err := inputReader.ReadString('\n')
|
|
|
|
if err != nil {
|
|
fmt.Println("There were errors reading, exiting program.")
|
|
return
|
|
}
|
|
|
|
fmt.Printf("Your name is %s", input)
|
|
// For Unix: test with delimiter "\n", for Windows: test with "\r\n"
|
|
switch input {
|
|
case "Philip\r\n": fmt.Println("Welcome Philip!")
|
|
case "Chris\r\n": fmt.Println("Welcome Chris!")
|
|
case "Ivo\r\n": fmt.Println("Welcome Ivo!")
|
|
default: fmt.Printf("You are not welcome here! Goodbye!")
|
|
}
|
|
|
|
// version 2:
|
|
switch input {
|
|
case "Philip\r\n": fallthrough
|
|
case "Ivo\r\n": fallthrough
|
|
case "Chris\r\n": fmt.Printf("Welcome %s\n", input)
|
|
default: fmt.Printf("You are not welcome here! Goodbye!\n")
|
|
}
|
|
|
|
// version 3:
|
|
switch input {
|
|
case "Philip\r\n", "Ivo\r\n": fmt.Printf("Welcome %s\n", input)
|
|
default: fmt.Printf("You are not welcome here! Goodbye!\n")
|
|
}
|
|
}
|