switch 배열
배열(Array)은 여러 개의 값을 순차적으로 저장할 수 있는 자료구조입니다. 이 중에서도 switch문은 조건문 중 하나로, 특정 변수의 값에 따라 다른 코드 블록을 실행할 수 있습니다.
예를 들어, 다음과 같은 배열이 있다고 가정해봅시다.
const fruits = ['apple', 'banana', 'orange'];
이 배열에는 'apple', 'banana', 'orange'라는 3개의 과일이 저장되어 있습니다. 이제 switch문을 사용하여 이 배열의 값을 확인하고, 각각의 과일에 대한 처리를 해보겠습니다.
switch (fruits[0]) {
case 'apple':
console.log('This is an apple.');
break;
case 'banana':
console.log('This is a banana.');
break;
case 'orange':
console.log('This is an orange.');
break;
default:
console.log('This is not a fruit.');
}
위 코드에서는 switch문을 사용하여 fruits 배열의 첫 번째 요소를 확인하고, 해당하는 과일에 대한 처리를 하고 있습니다. 만약 fruits[0]이 'apple'이라면 'This is an apple.'이라는 문자열이 출력됩니다. 만약 fruits[0]이 'banana'이라면 'This is a banana.'이라는 문자열이 출력됩니다. 이와 같이, fruits[0]이 'orange'일 경우 'This is an orange.'이라는 문자열이 출력됩니다. 만약 fruits[0]이 위의 case에 해당하지 않는 값이라면, default 블록이 실행되어 'This is not a fruit.'이라는 문자열이 출력됩니다.
위 코드에서는 fruits[0]을 확인하고 있지만, fruits[1]이나 fruits[2]를 확인하려면 switch문의 괄호 안에 fruits[1]이나 fruits[2]를 넣어주면 됩니다.
switch 문과 if문
const fruit = 'apple';
switch (fruit) {
case 'apple':
if (fruit === 'apple') {
console.log('This is an apple.');
}
break;
case 'banana':
if (fruit === 'banana') {
console.log('This is a banana.');
}
break;
case 'orange':
if (fruit === 'orange') {
console.log('This is an orange.');
}
break;
default:
console.log('This is not a fruit.');
}
위 코드에서는 switch문을 사용하여 fruit 변수의 값을 확인하고, 해당하는 과일에 대한 처리를 하고 있습니다. 만약 fruit이 'apple'이라면, switch문의 첫 번째 case가 실행되어 if문이 실행됩니다. if문에서는 fruit이 'apple'인지 다시 한 번 확인하고, 'This is an apple.'이라는 문자열이 출력됩니다. 만약 fruit이 'banana'이라면, switch문의 두 번째 case가 실행되어 if문이 실행됩니다. if문에서는 fruit이 'banana'인지 다시 한 번 확인하고, 'This is a banana.'이라는 문자열이 출력됩니다. 이와 같이, fruit이 'orange'일 경우 'This is an orange.'이라는 문자열이 출력됩니다. 만약 fruit이 위의 case에 해당하지 않는 값이라면, default 블록이 실행되어 'This is not a fruit.'이라는 문자열이 출력됩니다.
위 코드에서는 switch문과 if문을 함께 사용하여, 특정 변수의 값에 따라 다른 처리를 하는 방법을 보여주고 있습니다.
[정보처리기사]
swtich default 문
switch문에서 default문은 모든 case문에 해당하지 않을 때 실행되는 블록입니다. 즉, switch문의 조건에 맞는 값이 없을 때 실행되는 코드를 작성할 때 사용됩니다.
const fruit = 'watermelon';
switch (fruit) {
case 'apple':
console.log('This is an apple.');
break;
case 'banana':
console.log('This is a banana.');
break;
case 'orange':
console.log('This is an orange.');
break;
default:
console.log('This is not an apple, banana, or orange.');
}
위 코드에서는 fruit 변수의 값이 'watermelon'이므로, switch문의 모든 case문에 해당하지 않습니다. 따라서 default문이 실행되어 'This is not an apple, banana, or orange.'이라는 문자열이 출력됩니다.
default문은 switch문에서 필수적으로 작성할 필요는 없지만, 모든 경우에 대한 처리를 하기 위해서는 default문을 작성하는 것이 좋습니다.
[정보처리기사]
정수
정수(Integer)는 양의 정수(Positive Integer), 음의 정수(Negative Integer), 0(Zero)을 포함하는 수의 집합입니다. 즉, 정수는 소수점 이하의 값을 가지지 않는 수입니다.
양의 정수는 1, 2, 3, 4, 5, ...와 같이 0보다 큰 수를 말하며, 음의 정수는 -1, -2, -3, -4, -5, ...와 같이 0보다 작은 수를 말합니다. 0은 양의 정수와 음의 정수를 모두 포함하는 정수입니다.
따라서, "정수는 -도 정수다"는 말은 양의 정수, 음의 정수, 0을 모두 포함한다는 뜻입니다. 예를 들어, -1, 0, 1, -100, 100 등 모든 정수는 -도 정수입니다.
[정보처리기사]
for문과 향상된 for문
for (초기식; 조건식; 증감식) {
// 반복해서 실행할 코드 블록
}
초기식은 반복문이 시작될 때 단 한 번 실행되는 코드입니다. 보통 변수를 초기화하는 용도로 사용됩니다. 조건식은 반복문이 실행될 조건을 나타내는 코드입니다. 조건식이 참(true)인 동안 반복문이 실행됩니다. 증감식은 반복문이 실행된 후에 실행되는 코드입니다. 보통 변수를 증가시키거나 감소시키는 용도로 사용됩니다.
아래는 for문을 사용하여 1부터 10까지의 합을 구하는 예시 코드입니다.
let sum = 0;
for (let i = 1; i <= 10; i++) {
sum += i;
}
console.log(sum); // 55
위 코드에서는 초기식으로 변수 i를 1로 초기화하고, 조건식으로 i가 10보다 작거나 같을 때까지 반복하도록 설정하였습니다. 증감식으로는 i를 1씩 증가시키도록 설정하였습니다. 반복문이 실행될 때마다 sum 변수에 i 값을 더해주고, 반복문이 종료된 후에는 sum 변수의 값을 출력합니다.
향상된 for문은 배열(Array)이나 객체(Object)와 같은 자료구조를 순회할 때 사용하는 반복문입니다. 향상된 for문은 다음과 같은 구조를 가집니다.
향상된 for문
for (변수 of 배열) {
// 반복해서 실행할 코드 블록
}
위 구조에서 변수는 배열의 각 요소를 차례대로 저장하는 변수입니다. 배열의 모든 요소를 순회할 때까지 반복문이 실행됩니다.
아래는 향상된 for문을 사용하여 배열의 모든 요소를 출력하는 예시 코드입니다.
const fruits = ['apple', 'banana', 'orange'];
for (const fruit of fruits) {
console.log(fruit);
}
위 코드에서는 fruits 배열의 모든 요소를 출력하기 위해 향상된 for문을 사용하였습니다. fruit 변수에 fruits 배열의 각 요소가 차례대로 저장되며, console.log(fruit) 코드가 실행됩니다. 따라서, 위 코드는 'apple', 'banana', 'orange'라는 문자열을 순서대로 출력합니다.
switch 문 breack, continue switch
continue 는 : 다시 조건 switch 문으로 돌아가라
breack: 는 그대로 멈춰서 { 중괄호 } 를 벗어나라
while 문에 조건이 '참' 이여도 그 { 중괄호} 부분을 실행하고 '종료' 된다.
break와 continue는 반복문(for문, while문, do-while문)에서 사용되는 키워드입니다. switch문에서도 break를 사용할 수 있습니다.
break는 반복문에서 사용되며, 반복문을 즉시 종료시키는 역할을 합니다. 즉, break가 실행되면 반복문의 나머지 부분은 실행되지 않고, 반복문을 빠져나오게 됩니다.
아래는 for문에서 break를 사용하여 반복문을 종료하는 예시 코드입니다.
for (let i = 1; i <= 10; i++) {
if (i === 5) {
break;
}
console.log(i);
}
위 코드에서는 i가 5일 때 break가 실행되어 반복문이 종료됩니다. 따라서, 위 코드는 1, 2, 3, 4까지만 출력됩니다.
continue는 반복문에서 사용되며, 반복문의 나머지 부분을 실행하지 않고, 다음 반복으로 넘어가는 역할을 합니다.
아래는 for문에서 continue를 사용하여 반복문을 실행하는 예시 코드입니다.
for (let i = 1; i <= 10; i++) {
if (i === 5) {
continue;
}
console.log(i);
}
위 코드에서는 i가 5일 때 continue가 실행되어 반복문의 나머지 부분이 실행되지 않고, 다음 반복으로 넘어갑니다. 따라서, 위 코드는 1, 2, 3, 4, 6, 7, 8, 9, 10이 출력됩니다.
switch문에서 break는 switch문을 즉시 종료시키는 역할을 합니다. 즉, break가 실행되면 switch문의 나머지 부분은 실행되지 않고, switch문을 빠져나오게 됩니다.
아래는 switch문에서 break를 사용하여 switch문을 종료하는 예시 코드입니다.
const fruit = 'apple';
switch (fruit) {
case 'apple':
console.log('This is an apple.');
break;
case 'banana':
console.log('This is a banana.');
break;
case 'orange':
console.log('This is an orange.');
break;
default:
console.log('This is not a fruit.');
break;
}
위 코드에서는 fruit 변수의 값이 'apple'이므로, switch문의 첫 번째 case문이 실행됩니다. case문이 실행된 후에는 break가 실행되어 switch문을 종료합니다. 따라서, 위 코드는 'This is an apple.'이라는 문자열만 출력됩니다.
c 언어 printf ( 첫번째 조건, 두번째 조건)
c 언어 중
printf ( 첫번째 조건, 두번째 조건) , 두번째 조건으로 첫번째 조건을 실행하라.
printf("서식 문자열", 매개변수);
printf는 C 언어에서 출력을 위한 함수입니다. printf 함수는 stdio.h 헤더 파일에 선언되어 있으며, 다음과 같은 구조를 가집니다.
위 구조에서 "서식 문자열"은 출력할 문자열을 나타내는 문자열 상수입니다. 서식 문자열은 출력할 문자열과 서식 지정자를 포함할 수 있습니다. 서식 지정자는 출력할 값의 자료형과 출력 형식을 지정하는데 사용됩니다.
매개변수는 서식 문자열에 포함된 서식 지정자에 대응하는 값입니다. 매개변수는 서식 문자열에 포함된 서식 지정자의 개수와 일치해야 합니다.
예를 들어, printf("%d + %d = %d\n", 2, 3, 2 + 3); 코드는 "2 + 3 = 5"를 출력합니다. "%d + %d = %d\n"은 서식 문자열이며, 각각 정수형 변수 2, 3, 2 + 3에 대응하는 서식 지정자입니다. 따라서, 2, 3, 2 + 3이 차례로 출력되고, 마지막으로 2 + 3의 결과인 5가 출력됩니다. \n은 줄바꿈 문자입니다. 따라서, 출력된 문자열은 한 줄에 출력되지 않고, 다음 줄에서 출력됩니다.
c 언어 s [2] = (s+2)
과 같다.
s [2] = (s+2)
s [i] = *(s+i) 와 같다.
'컴퓨터공부 > 정보처리기사' 카테고리의 다른 글
[정보처리기사] java2 문제 실습 (0) | 2023.06.19 |
---|---|
[정보처리기사] c언어와 문제 (0) | 2023.06.18 |
[정보처리기사] c언어 문제 (0) | 2023.06.17 |
[정보처리기사 실기] 오픈소스, 요구사항 ,비기능, 기능 (0) | 2023.06.16 |
댓글