Swift/기초 문법

Quiz 1 - 정리

수줌이 2021. 2. 9. 18:16

Q1. 스위프트 기초 개념 퀴즈

1. 내 이름을 나타내는 변수를 선언할 때 적절한 이름은 무엇일까요? (단일선택)

 my_name

 myName

 MyName

 my-name

 

💡 정답

더보기

myName

  • Lower Camel Case : fuction, method, variable, constant

ex.) someVariableName

  • Upper Camel Case : type(class, struct, enum, extension…)

ex.) Person, Point, Week

  • Swift는 모든 대소문자를 구분합니다.

 

 

2. 콘솔로그를 남기는 간단한 함수를 모두 선택하세요. (다중선택)

□ printf

□ print

□ dump

□ scanf

 

💡 정답

더보기
  • print 함수 : 단순 문자열 출력
  • dump 함수 : 인스턴스의 자세한 설명(description 프로퍼티)까지 출력

 

3. 아래 코드의 [빈칸]에 들어가기 알맞은 코드를 골라보세요. (단일선택)

let number: Int = 777

let output: String = [빈칸]

print(output) // 행운의 숫자는 777입니다!

□ “행운의 숫자는 %d입니다!”

□ “행운의 숫자는 /(number)입니다!”

□ “행운의 숫자는 (number)입니다!”

□ “행운의 숫자는 \(number)입니다!”

 

💡 정답

더보기

“행운의 숫자는 \(number)입니다!”

  • 문자열 보간법\\(): 프로그램 실행 중 문자열 내에 변수 또는 상수의 실질적인 값을 표현하기 위해 사용.

 

 

4. 차후에 변경이 불가능한 값을 선언하고 싶을 때 아래 코드의 [빈칸]에 들어갈 키워드를 골라보세요. (단일선택)

[빈칸] someConstant: Int = 100

□ var

□ const

□ let

□ static

 

💡 정답

더보기

let

  • let : 상수 선언 키워드
  • var : 변수 선언 키워드

 


Q2. 스위프트 기본 데이터타입 퀴즈

1. 다음 중 오류가 발생하는 코드를 모두 선택하세요. (다중선택)

let numberOne: Int = 123

let numberTwo: Double = 123

let numberThree: UInt = -123

let character: Character = 'A'

□ let string: String = "A"

 

💡 정답

더보기

let numberThree: UInt = -123 → error, 양수 값만 허용

let character: Character = 'A' → error, " "(큰 따옴표) 사용

let character: Character = "A"
let string: String = "A" // possible
let string: String = character // error

 

2. 다음 중 스위프트에서 없음을 나타내는 키워드를 고르세요. (단일선택)

□ NULL

□ No

□ nil

□ Any

 

💡 정답

 

3. 다음 중 오류가 발생하는 코드를 모두 선택하세요. (다중선택)

□ var arrayOne: Array<Int> = [1, 2, 3]

□ var arrayTwo: [Int] = Array<Int>()

□ var arrayThree: [Int] = [Int]

□ var dictionaryOne: Dictionary<String> = Dictionary<String>()

□ var dictionary: [String:Int] = ["key":100]

 

💡 정답

더보기

suzumsz.tistory.com/6?category=928290 참고

var arrayThree: [Int] = [Int] // error

var dictionaryOne: Dictionary<String> = Dictionary<String>() // error

 


Q3. 스위프트 함수 퀴즈

1. 다음 중 오류가 발생하는 코드를 고르세요. (단일선택)

func addOne(left a: Int, right b: Int) -> Int {
     return a + b
}
func addTwo(a: Int = 0, b: Int = 0) -> Int {
     return a + b
}

□ addOne(left: 0, right: 0)

□ addOne(a: 10, b: 20)

□ addTwo(a: 10, b: 10)

□ addTwo(b: 10)

□ addTwo()

 

💡 정답

더보기

addOne(left: 0, right: 0) // 0

addOne(a: 10, b: 20) // error, 매개변수 명 오류

addTwo(a: 10, b: 10) // 20

addTwo(b: 10) // 10

addTwo() // 0


Q4. 스위프트 제어구문 퀴즈

1. 다음 코드의 실행 결과로 콘솔에 출력될 문자열을 입력해주세요. (단답형)

let someInteger = 50
if someInteger < 100 {
     print("100 미만")
} else if someInteger > 0 {
     print("0 초과")
} else if someInteger > 30 {
     print("30 초과")
} else {
     print("50")
}

출력결과: __________

 

💡 정답

더보기

출력결과: 100 미만

 

2. 다음 코드의 실행 결과로 콘솔에 출력될 문자열로 알맞은 것을 고르세요. (단일선택)

let someInteger = 50
case 0:
     print("zero")
case 1..<100:
     print("1~99")
case 50:
     print("50")
}

□ zero

□ 1 ~ 99

□ 50

□ 실행불가

 

💡 정답

더보기

let someInteger = 50

switch someInteger { // 이 구문과

case 0:

       print("zero")

case 1..<100:

       print("1~99")

case 50:

       print("50")

default: // default 구문을 넣어줘야 한다

       print("nothing") }

 

3. 다음 코드의 실행 결과로 콘솔에 출력될 내용을 고르세요. (단일선택)

let max = 1
var count = 0
repeat {
     count = count + 1
     print(count)
} while count < max

□ 출력내용 없음

□ 0

□ 1

□ 01

 

💡 정답


5. 스위프트 옵셔널 퀴즈

1. 다음 중 오류가 발생하는 코드를 고르세요. (단일선택)

□ let optionalOne: Int! = nil

□ let optionalTwo: Int? = optionalOne

□ let optionalThree: Int? = nil

□ let optionalFour: Int = nil

 

💡 정답

더보기
let optionFour: Int = nil // error, nil이 들어갈 수 없다

 

2. 다음 중 오류가 발생하는 코드를 모두 고르세요. (다중선택)

optionalA = optionalB + 1

optionalA = 100

print(optionalB * 3)

optionalB = optionalA

 

💡 정답

더보기
var optionalA: Int? = nil
var optionalB: Int! = nil

 

3. 다음 중 오류가 발생하는 코드를 모두 고르세요. (단일선택)

let some: Int? = 100
[빈칸] unwrapped: Int = some {
print("추출된 some의 값은 \(unwrapped)입니다")
}

let

guard let

if let

some let

 

💡 정답

더보기

if let

  • 옵셔널 바인딩
  1. nil 체크 + 안전한 추출

  2. 옵셔널 안에 값이 들어있는지 확인하고 값이 있으면 값을 꺼내옵니다.

  3. if-let 방식 사용