Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바의 정석 기초편 ch12
- 자바의 정석 기초편 ch6
- 스프링 고급 - 스프링 aop
- 자바의 정석 기초편 ch13
- 자바의 정석 기초편 ch1
- 2024 정보처리기사 시나공 필기
- 코드로 시작하는 자바 첫걸음
- 2024 정보처리기사 수제비 실기
- 자바의 정석 기초편 ch5
- 스프링 입문(무료)
- 자바의 정석 기초편 ch8
- 게시글 목록 api
- 스프링 mvc2 - 타임리프
- 자바의 정석 기초편 ch4
- 자바의 정석 기초편 ch7
- 타임리프 - 기본기능
- 자바의 정석 기초편 ch2
- 자바의 정석 기초편 ch11
- jpa - 객체지향 쿼리 언어
- 스프링 db2 - 데이터 접근 기술
- 스프링 mvc1 - 스프링 mvc
- 자바의 정석 기초편 ch14
- jpa 활용2 - api 개발 고급
- 스프링 mvc1 - 서블릿
- 자바의 정석 기초편 ch3
- 스프링 mvc2 - 로그인 처리
- @Aspect
- 스프링 mvc2 - 검증
- 스프링 db1 - 스프링과 문제 해결
- 자바의 정석 기초편 ch9
Archives
- Today
- Total
나구리의 개발공부기록
Chapter 02 - C언어(조건문, 반복문) 본문
2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비)/실기 6강 - 프로그래밍 언어 활용
Chapter 02 - C언어(조건문, 반복문)
소소한나구리 2024. 5. 21. 22:052024년도 수제비 실기책(6판) 내용 정리
7. 조건문
- 조건의 참, 거짓 여부에 따라 실행 경로를 달리하는 if문과 여러 경로 중에 하나를 선택하는 switch문으로 구분됨
1) if문
- 조건이 참인지 거짓인지에 따라 경로를 선택하는 명령문
if (조건문) { // if의 조건문이 참일 경우 if 안에 있는 명령문을 실행
명령문;
}
else if (조건문) { // if문의 조건이 거짓이고 else if문의 조건이 참일 경우 해당 명령문을 수행
명령문;
}
else if (조건문) // else if문은 여러개 사용 가능
명령문; // if문의 코드가 한줄이면 중괄호를 생략할 수 있음
else { // if문의 조건이 거짓이고 여러 개의 else if문의 조건문이 모두 거짓일 때 해당 명령문을 실행
명령문; // else문은 사용하지 않거나 한번만 사용
}
#include <stdio.h>
int main() {
int x = 5; // x의 값은 5
if (x % 3 == 0) // x를 3으로 나눈 나머지가 0이면 if문의 명령문을 수행
printf("1");
else if (x % 3 == 1) // x를 3으로 나눈 나머지가 1이면 else if문의 명령문을 ㅜㅅ행
printf("2");
else // 위 조건식이 모두 거짓일 경우 else 문의 명령문을 수행,
printf("3"); // 모든 조건식이 거짓이므로 3출력
return 0;
}
2) switch문
- 조건에 따라 여러 개의 선택 경로 중 하나를 취하고자 할 때 사용하는 명령어
switch (식){ // 식을 계산해서 일치하는 값을 가진 case 문을 실행
case 값1:
명령문;
break;
case 값2:
명령문; // case문에 break가 존재하지 않을 경우 break를 만나거나 switch문이 끝날때까지 모든 문장을 실행
default: // 어떠한 case의 값도 만족하지 않으면 default로 진입해서 명령문을 실행
명령문;
}
#include <stdio.h>
int main() {
int score = 101;
switch(score/10) { // score의 값인 101을 10으로 나눈 몫의 값을 만족하는 case문으로 진행
case 10: // 몫은 10이므로 case 10로 이동, break;가 없으므로 case9;로 이동
case 9:
printf("A"); break; // A를 출력하고 break;문을 만나서 case문 종료
case 8:
printf("B"); break;
default:
printf("F");
}
return 0;
}
출력 : A
8. 반복문
- 특정 부분을 조건이 만족할 때까지 실행하도록 하는 명령문
- 특별한 조건이 없으면 무한 처리를 반복(무한 루프) 하게 됨
1) while 문
- 조건이 참인 동안에 해당 분기를 반복해서 실행하는 명령문
while(조건문){
명령문;
}
// while문도 명령 코드가 한줄이면 {} 생략 가능
#include <stdio.h>
int main() {
int i = 0, sum = 0;
while (i < 2) { // i의 값이 2보다 미만이면 계속 반복
i++; // while문이 실행되면 i의 값을 1 증가시킴
sum = sum + i; // sum의 값에 sum + i를 저장
// 1회 , i가 1이 되고 sum이 1이됨, 2회, i가 2가 되고 sum은 3이됨
}
printf("%d\n", sum); // 반복문이 종료되면 sum의 값을 출력
return 0;
}
// 출력 : 3
2) Do - while 문
- 참, 거짓과 관련 없이 무조건 한 번은 실행하고, 그 다음부터는 조건이 참인 동안에 해당 분기를 반복해서 실행하는 명령문
do {
명령문
} while (조건문);
#include <stdio.h>
int main() {
int i = 1, sum = 0;
do { // 무조건 1번 실행
sum = sum + i; // sum은 1이됨
i++; // i는 2가 됨
} while (i < 0); // i 가 0보다 작으면 계속반복, 아니면 반복문 종료,
printf("%d\n", sum); // 1 출력
return 0;
}
3) for 문
- 초기식, 조건식, 증감식을 지정하여 반복하는 명령어
// 1. 초기식에 따라 초기화 수행
// 2. 조건식이 참일 경우 for문 안의 명령문을 실행
// 5. 조건식이 참일 경우 for 문 안의 명령문을 실행
// 8. 조건식이 거짓일 경우 for문 종료
for (초기식; 조건식; 증감식) { // 4. for 문안의 명령문이 끝나고 다시 돌아오면 증감식에 의해 값을 변경
// 7. 위와 동일
명령문; // 3. 명령문 실행 , 6. 명령문 실행
}
명령문 ; // 9. for문이 종료되면 for문 아래의 명령부터 순차적으로 실행
// 만일 for문 ,while문에서 for(...); 이렇게 바로 세미콜론이 있다면 명령문이 없는 경우와 동일함
// for문도 명령문이 하나면 {} 생략 가능
#include <stdio.h>
int main() {
int i, sum = 0; // i는 선언만, sum은 0으로 초기화하여 선언
// i를 1으로 초기화 하고 i가 3미만이면 명령문을 실행 후 i값을 증가
// 1부터 3미만까지 반복되므로 2번 반복되고 명령문은 2번 실행됨
for (i = 1; i < 3; i++)
sum = sum + i; // 1회전 sum은 1이됨, 2회전 sum은 3이됨
printf("%d\n", sum); // sum의 값 3 출력
return 0;
}
// 2중 for문 예제
#include <stdio.h>
int main() {
int i, j;
for (i=1; i<3; i++) // 1차 for문
// 1차 for문의 조건식이 참이면 명령문을 수행하고 2차 for문으로 넘어감
// 2차 for문을 끝까지 수행하고 다시 1차 for문의 증감식이 실행 되고 2번째 1차 for문이 실행됨
for (j=1; j<3; j++) // 2차 for문
printf("%d\n", i*10+j);
return 0;
}
// 11 i = 1 j = 1 (1차 for문 1번, 2차 for문 1번)
// 12 i = 1 j = 2 (1차 for문 1번, 2차 for문 2번)
// 21 i = 2 j = 1 (1차 for문 2번, 2차 for문 1번)
// 22 i = 2 k = 2 (1차 for문 2번, 2차 for문 2번)
4) 루프 제어 명령문
(1) break문
- 반복문이나 switch 문을 중간에 탈출하기 위해 사용하는 명령어
#include <stdio.h>
int main() {
int i = 1;
while (i < 5) { // i의 값이 5미만(4가 될때까지)이면 반복
i++; // i의 값을 1 증가
if (i == 3) // i의 값이 3이 되면 break;문으로 반복문 종료
break;
printf("%d", i); // 반복문이 실행되는 동안 i의 값을 출력
}
printf("%d", i); // 반복문이 종료되면 i의 값을 출력
return 0;
}
// 23 개행문자가 없으므로 2 3이 붙혀서 출력됨
(2) continue 문
- 반복문에서 다음 반복으로 넘어갈 수 있도록 하는 명령어
#include <stdio.h>
int main(){
int i = 1;
while (i < 5) { // i가 5미만(4가 될때까지)이면 반복문 수행
i++; // i의 값을 1 증가
if(i == 3) // i의 값이 3이되면 continue;문을 수행하여 다음 명령문 수행 없이 곧바로 반복문 처음으로 돌아감
continue;
printf("%d", i); // 반복문이 수행되는 동안 i 값 출력
}
printf("%d", i); // 반복문이 종료되면 i값 출력
return 0;
}
// 2455
// while문 1회전 2 출력, 2회전 i값이 3이므로 continue문 실행
// 3회전 4출력, 4회전 5출력 -> 5가되어 반복문 종료, 반복문 종료 후 printf문으로 5한번더 출력
'2024정보처리기사 준비 정리(필기 - 시나공, 실기 - 수제비) > 실기 6강 - 프로그래밍 언어 활용' 카테고리의 다른 글
Chapter 02 - C언어(함수) (0) | 2024.05.24 |
---|---|
Chapter 02 - C언어(배열, 문자열, 구조체) (0) | 2024.05.21 |
Chapter 02 - C언어(연산자) (0) | 2024.05.20 |
Chapter 02 - C언어(변수, 표준 입출력 함수) (0) | 2024.05.19 |
Chapter 01 - 프로그래밍을 위한 기본 사항(진수) , Chapter 02 - C언어(C언어 기본, 자료형, 식별자) (0) | 2024.05.18 |