안녕하세요
문제5번에 switch (3) 이라고 되어있고
case 1
case 2
case 3
case 4 이런식으로 있는데요
제가 프로그램 돌려본적도 없어서 이해가 안되는 부분이 있는데요
switch (3)
case 1
case 2
case 3 switch (3) 이 case 3으로 가는건데
switch(n) = case(n) 인건가요?
아니면 (n) = n번째 있는 case 인건가요?
.
문제 5번의 경우에는 case 의 숫자와 몇 번째에 오는 순서가 동일해서
(switch(3) case 3을 선택할 때
case 3이 세번째에 있기도 하고, 같은 3을 나타내고 있어서,)
만약 switch가 가르키는 숫자가 있는데, case 옆의 숫자와 case가 위치한 순서가 다르다면 어떻게 되는지가 궁금했습니다.
ex) case 3이 세번째줄이 아니라 4번째줄에 있다면
경우 1) switch(n) 안에 들어간 n의 숫자가 n번째에 있는 case를 뜻하는 거라면
첫번째에 case0이 올 수 있다고 가정하고 (제가 case 0부터 시작할 수 있는지 없는지 몰라서)
switch(3)
case 0
case 1
case 2
case 3
case가 이렇게 나열되어있다고 한다면
case 3 이 아닌 case 2로 가면 되는건지,
switch (4)
case 1
case 2
case 3
default
라고 되어있으면 default 값으로 바로 가게 되는지 궁금하고
만약 n번째에 있는 값에 가는 것이 아니라
해당되는 case 옆에 숫자에 맞춰서 가는것이라면
경우 2) switch(n) 에 있는 n은 case n 에 해당하는 것에 찾아가면 된다.
case 0 이 올 수 있다는 가정에서
switch (1)
case 0
case 1
case 2
두번째 줄에 있지만 switch 괄호안에 있는 숫자가 1이기 때문에
case 1을 바로 실행하게 되는데
위에 있는 경우1 (n번째줄 찾아가는 방법) 로 한다면 case 0 부터 실행하니까 결과값이 달라지는데요 (swich (1)은 1번째 줄로 가는 것이기 때문에)
만약 switch 연산이 경우2 로 하는 것이라면
default로 바로 가는 경우는 switch(default) 라고 해야하는지 궁금합니다.
정리하자면 switch () 여기 스위치 괄호안에 들어간 숫자가
case 옆에 있는 숫자를 보고 들어가는 것인지
case가 나열된 몇 번째 줄에 들어가게 되는지
후자의 경우라면 default로 가고 싶으면 몇번째에 있는지만 알면 되는데,
전자의 경우라면 default 로 가고 싶다면 어떻게 표현해야하는지 궁금합니다.
안녕하세요 길벗수험서 운영팀입니다.
switch(3)이라고 적혀있다면 세 번째가 아닌 '3'이라는 값을 갖고 있는 case를 찾아 해당 위치의 코드를 수행하게 됩니다.
default의 경우는 case 중에 해당 값을 갖고 있는 case가 없을 때 가게 되는 것으로
switch(4) {
case 0:
case 1:
case 2:
default:
}
와 같이 작성하는 경우 default로 가게 됩니다.
switch(default)와 같은 경우는 예상해본적이 없어 수행이 가능한지 실제 코드로 작성해 실행해보았으나, 오류로 컴파일조차 되지 않았습니다.
행복한 하루되세요 :)
-
관리자2021-04-05 17:12:24
안녕하세요 길벗수험서 운영팀입니다.
switch(3)이라고 적혀있다면 세 번째가 아닌 '3'이라는 값을 갖고 있는 case를 찾아 해당 위치의 코드를 수행하게 됩니다.
default의 경우는 case 중에 해당 값을 갖고 있는 case가 없을 때 가게 되는 것으로
switch(4) {
case 0:
case 1:
case 2:
default:
}
와 같이 작성하는 경우 default로 가게 됩니다.
switch(default)와 같은 경우는 예상해본적이 없어 수행이 가능한지 실제 코드로 작성해 실행해보았으나, 오류로 컴파일조차 되지 않았습니다.
행복한 하루되세요 :)
-
관리자2021-04-07 09:39:48
안녕하세요 길벗수험서 운영팀입니다.
예, case가 존재하는 0, 1, 2 외에 다른 어떠한 값을 넣어도 default로 이동하게 됩니다.
(심지어 문자나 실수를 넣어도요.)
행복한 하루되세요 :)
-
*2021-04-05 21:14:55
default의 경우는 case 중에 해당 값을 갖고 있는 case가 없을 때 가게 되는 것으로
switch(4) {
case 0:
case 1:
case 2:
default:
}
와 같이 작성하는 경우 default로 가게 됩니다.
라는 구문에서
그러면 switch(4)가 아닌 switch(5) 등 case에 없는 값(아무숫자)들을 입력하면 되는 것인가요?