Q1. 다음 중 goroutine 에 대한 설명으로 틀린 것은?
Q2. 다음 중 Go에서 복수 채널을 동시에 기다리기 위해 사용하는 것은?
Q3. 다음 Go 코드가 실행되었을 때, 출력값은?
func main() { L1: for { break L1 } println("OK") }
Q4. 다음 Go 코드가 실행되었을 때, 출력값은?
func main() { ch := make(chan string, 1) f(ch) } func f(ch chan<- string) { ch <- "OK" str := <-ch println(str) }
Q5. 다음 코드가 실행되었을 때, 출력값은?
func main() { A := [3][3]int{{1, 1, 1}, {1, 1, 1}, {1, 1, 1}} sum := 0 LOOP: for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { if i == j { continue LOOP } sum += A[i][j] } } fmt.Println(sum) }
Q6. 다음 코드가 실행되었을 때, 변수 n 의 값은?
package main func foo() func() int { i := 0 return func() int { i++ return i } } func main() { f := foo() n := f() + f() println(n) }
Q7. 다음 코드가 실행되었을 때, 출력값은?
type circle struct{ center, radius float32 } func (r *circle) move1() { r.center += 1.0 } func (r circle) move2() { r.center += 1.0 } func main() { c := circle{1.0, 2.0} c.move1() c.move2() fmt.Println(c.center) }
Q8. 다음 코드가 실행되었을 때, 출력값은?
func main() { var a interface{} = 1.0 i := a.(int) fmt.Println(i) }
Q9. 다음 중 type 문을 잘못 사용한 것은?
Q10. 다음 중 import 문을 잘못 사용한 예는?