반응형
1부터 n까지의 정수 합 구하기
#include <stdio.h>
int main(void)
{
int n;
printf("정수를 입력하세요. :");
scanf_s("%d", &n);
if (n > 0)
printf("이 수는 양수입니다.\n");
else if (n < 0)
printf("이 수는 음수입니다.\n");
else
printf("이 수는 0입니다.\n");
return 0;
}
while문 반복
- 합을 저장하는 변수 sum을 0, 반복을 제어하기 위한 변수 i를 1로 초기화
- 변수 i의 값이 n이하인 동안 i의 값을 1씩 증가하면서 명령문을 n회 반복 실행
for문 반복
하나의 변수를 사용하는 반복문에서 사용
#include <stdio.h>
int main(void)
{
int i, n;
int sum;
puts("1부터 n까지의 합을 구합니다.");
printf("n값 :");
scanf_s("%d", &n);
sum = 0;
for (i = 1; i <= n; i++)
{
sum += i;
}
printf("1부터 %d까지의 합은 %d입니다. \n", n, sum);
return 0;
}
for문의 형식
for(식1;식2;식3)명령문
식1 : 처음 한 번만 실행
식2: 0이 아닌 경우 반복하여 실행
식3: 평가
for문과 while문의 차이
- for(식1; 식2; 식3)
루프 본문 - 식1;
while(식2)
{
루프 본문
식3;
}
양수만 입력하기
n에 -값을 넣는 경우 올바르지 않은 결과가 나온다.
#include <stdio.h>
int main(void)
{
int i, n;
int sum;
puts("1부터 n까지의 합을 구합니다.");
do {
printf("n값 :");
scanf_s("%d", &n);
} while (n <= 0);
sum = 0;
for (i = 1; i <= n; i++)
{
sum += i;
}
printf("1부터 %d까지의 합은 %d입니다. \n", n, sum);
return 0;
}
do-while문을 이용해 n이 0이하의 값을 입력하면 다시 입력할 것을 요구하도록 작성하였다.
do-while문은 루프 본문을 한 번 실행한 다음에 계속 반복할 것인지를 판단하는 사후 판단 반복문이다.
사전 판단 반복문 (while문, for문) | 사후 판단 반복문 (do-while문) |
처음에 제어식이 0이면 루프 본문을 한번도 실행하지 않음 | 제어식과 상관없이 루프 본문이 반드시 한 번은 실행 |
구조적 프로그래밍
하나의 입구와 하나의 출구를 가진 구성 요소만을 계층적으로 배치해 프로그램을 구성하는 방법
구조적 프로그래밍의 제어 흐름
- 순차
- 선택
- 방법
다중 루프
곱셈표
#include <stdio.h>
int main(void)
{
int i, j;
printf("-----곱셈표-----\n");
for (i = 1; i <= 9; i++)
{
for (j = 1; j <= 9; j++)
{
printf("%3d", i * j);// i*j를 3자리로 출력
}
putchar('\n'); //열 루프 종료 후 줄 바꿈 문자의 출력
}
return 0;
}
- i가 1일 때 : j를 1 ->9 증가시키면서 1*j를 출력합니다. 그리고 줄 바꿈합니다.
- i가 2일 때 : j를 1 ->9 증가시키면서 2*j를 출력합니다. 그리고 줄 바꿈합니다.
- i가 3일 때 : j를 1 ->9 증가시키면서 3*j를 출력합니다. 그리고 줄 바꿈합니다.
- i가 9일 때 : j를 1 ->9 증가시키면서 9*j를 출력합니다. 그리고 줄 바꿈합니다.
직각 이등변 삼각형 출력
#include <stdio.h>
int main(void)
{
int i, j, n;
do {
printf("몇 단 삼각형입니까? :");
scanf_s("%d", &n);
} while (n <= 0);
for (i = 1; i <= n; i++)
{
for (j = 1; j <= i; j++)
{
putchar('*');
}
putchar('\n');
}
return 0;
}
- i가 1일 때 : j를 1 ->1 증가시키면서 *를 출력합니다. 그리고 줄 바꿈합니다.
- i가 2일 때 : j를 1 ->2 증가시키면서 *를 출력합니다. 그리고 줄 바꿈합니다.
- i가 3일 때 : j를 1 ->3 증가시키면서 *를 출력합니다. 그리고 줄 바꿈합니다.
- i가 4일 때 : j를 1 ->4 증가시키면서 *를 출력합니다. 그리고 줄 바꿈합니다.
- i가 5일 때 : j를 1 ->5 증가시키면서 *를 출력합니다. 그리고 줄 바꿈합니다.
반응형
'Computer Engineering > Data Structures Using C' 카테고리의 다른 글
[C언어 자료구조] 01-1. 알고리즘이란? (0) | 2020.12.29 |
---|---|
[C언어] 자료구조 공부하기 (0) | 2020.12.29 |