반복 탈출의 차이점
break문은 프로그램 블록안에서 실행을 중단하고 다음 블록으로 넘어가고자 할 때 사용하고,
continue문은 반복문의 반복을 한번 취소하고 다음 반복을 실행할 때 사용한다.
Copy <형식>
반복문
{
break; //가장 가까우 반복문 탈출
//탈출시 이후의 로직은 무시함
}
반복문
{
continue; //현재 반복만 탈출 - 다시 반복문으로 돌아가서 반복구문 수행
//탈출시 이후의 로직은 무시함
}
while문
- 어떤 조건이 참인 경우에 내부 문장, 혹은 실행블록을 계속 실행하게 되는 반복문
<형식>
while(논리 문장)
{
데이터 계산 혹은 프로그램 처리로직 ;
}
do문
- do문은 While문과 거의 비슷하지만, 논리 문장을 블록의 마지막에서 평가한다는 점에서 While문과
다르다.
Copy <형식>
do{
실행 블록; //(혹은 문장)
}while(논리문장)
11021번 A+B - 7
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.
예제 출력 1
Case #1: 2
Case #2: 5
Case #3: 7
Case #4: 17
Case #5: 7
#include <stdio.h>
int main()
{
int T;
int A, B;
scanf("%d", &T); //테스트케이스 개수
for (int i = 1; i < T+1; i++) {
scanf("%d %d", &A, &B);
printf("Case #%d: %d\n",i, A + B);
}
return 0;
}
11022번 A+B - 8
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다.
예제 출력 1
Case #1: 1 + 1 = 2
Case #2: 2 + 3 = 5
Case #3: 3 + 4 = 7
Case #4: 9 + 8 = 17
Case #5: 5 + 2 = 7
#include <stdio.h>
int main()
{
int T;
int A, B;
scanf("%d", &T); //테스트케이스 개수
for (int i = 1; i < T+1; i++) {
scanf("%d %d", &A, &B);
printf("Case #%d: %d + %d = %d\n", i, A, B, A + B);
}
return 0;
}
2438번 별 찍기 - 1
문제
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
예제 입력 1
5
예제 출력 1 복사
*
**
***
****
*****
#include <stdio.h>
int main()
{
int N;
scanf("%d", &N);
for (int i = 0; i < N; i++) {
for (int x = 0; x <= i; x++) {
printf("*");
}
printf("\n");
} return 0;
}
2439번 별 찍기 - 2
이 문제 잘 모르겠어서... 다른 분 코드 참고했다 !
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
예제 입력
5
예제 출력
*
**
***
****
*****
https://rujang.tistory.com/entry/%EB%B0%B1%EC%A4%80-2439%EB%B2%88-%EB%B3%84-%EC%B0%8D%EA%B8%B0-2-CC
[백준] 2439번 : 별 찍기 - 2 [C/C++]
#문제 2439번: 별 찍기 - 2 https://www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)
rujang.tistory.com
//다른 분 코드
int main() {
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (j < n - i - 1) printf(" ");
else printf("*"); }
printf("\n"); }
return 0; }
10952번 A+B - 5
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어져 있다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
입력의 마지막에는 0 두 개가 들어온다.
출력
각 테스트 케이스마다 A+B를 출력한다.
#include <stdio.h>
int main()
{
int A, B;
while (1) {
scanf("%d %d", &A, &B);
if (A == 0 && B == 0) break;
printf("%d\n", A + B); }
}
10951번 A+B - 4
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어져 있다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
각 테스트 케이스마다 A+B를 출력한다.
예제 입력 1 복사
1 1
2 3
3 4
9 8
5 2
예제 출력 1 복사
2
5
7
17
7
https://velog.io/@jykchoi/%EB%B0%B1%EC%A4%80-29-C-10951.-AB-4
백준 #29 [C] 10951. A+B-4, C언어에서 EOF
백준 10951. A+B, 무한루프, EOF, scanf함수
velog.io
위의 참고 사이트 (EOF 개념 기억하기)
* EOF
EOF: End-of-file, 파일 끝, 데이터 입력이 없을 때 실행을 끝냄. 입력을 중지하겠음을 알리기 위해 정의된 상수입니다.
<stdio.h> 파일의 41행에 -1 값으로 정의되어 있는 상수입니다.
결국 사용자가 입력하는 두 정수가 EOF가 아닐 때까지만 출력하도록 while문을 작성하면 되겠습니다.
#include <stdio.h>
int main() {
int A, B;
while(scanf("%d %d", &A, &B) != EOF)
printf("%d\n", A+B);
return 0;
}
'AI HW study > Baekjoon' 카테고리의 다른 글
백준 5단계 문자열 개념 정리 (0) | 2023.07.15 |
---|---|
백준 4단계: 1차원 배열 (0) | 2023.07.14 |
백준 10단계: 기하(직사각형과 삼각형) (0) | 2023.07.14 |
백준 1단계 (0) | 2023.07.11 |
백준 3단계-1: 반복문 (0) | 2023.07.11 |