목차
1. 반복문 iteration
동일한 문장을 여러 번 반복시키는 구조이다.
반복을 하면 프로그램이 간단하고 빠르다.
2. 반복문 종류
2-1 while
특정한 조건이 참(true)인 경우, 계속 반복한다.
조건이 거짓(false)가 되면 중단한다.
실행할 문장들은 { } 중괄호로 감싸서 블록으로 만든다.
while(조건식)
{
실행할 문장들 ;
}
- 팩토리얼 구하기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int i = 5;
int factorial = 1;
while (i >= 1)
{
factorial = i * factorial;
i -= 1;
}
printf("%d", factorial);
}
반복 조건은 한 번씩 반복할 때마다 반복을 계속할 것인지를 결정하는데, 이때 쓰이는 것이 i이다.
변수 i를 루프 제어 변수라고 한다.
- 구구단 구하기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int number, i, result ;
printf("구구단을 계산해보겠습니다. 몇단을 계산할까요?\n");
scanf("%d", &number);
i = 1;
while (i <= 9)
{
result = number * i;
printf("%d*%d=%d\n", number, i, result);
i += 1;
}
return 0;
}
-1부터 1000까지 모두 더하기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int sum, i;
sum = 0;
i = 1;
while (i <= 1000)
{
i += 1;
sum += i;
}
printf("%d\n", sum);
return 0;
}
>>500500
- 두 배씩 값 불리기
에베레스트 산 높이가 8800m이다. 종이를 접어 에베레스트 산 보다 높게 쌓아야 하는데, 한 번 접을 때마다 두께가 2배씩 늘어나고 무한대로 접을 수 있다. 처음 종이의 두께는 1mm이다. 종이 접기 횟수를 구한다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
double paper_height = 1;
const double mt = 8800000;
int count=0;
while (paper_height <= mt)
{
paper_height *= 2;
count += 1;
}
printf("%d\n", count);
return 0;
}
>>24회
-디지털 시계를 만들기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main(void)
{
int hour, min, sec;
hour = min = sec = 0;
while (1)
{
system("cls"); //화면 지우기
printf("%d : %d : %d", hour, min, sec);
sec++;
if (sec == 60) {
min++;
sec == 0;
}
if (min == 60) {
hour++;
min == 0;
}
if (hour == 24) {
hour = min = sec = 0;
}
Sleep(1000); //1000초 동안 프로그램을 재운다.
}
return 0;
}
- system 함수
인수로 실행시킬 프로세스 이름을 받아서 호출한다.
그 프로세스가 종료될 때까지 기다리는 역할도 한다.
사용법은 두 가지이다.
1) 경로 지정
2) 쉘 명령어로 입력
system("notepad")
system("explore.exe")
system("cls")
'C언어 > 참고서: C언어 콘서트' 카테고리의 다른 글
C언어 23차시 do-while문, 연습문제 (0) | 2023.03.25 |
---|---|
C언어 랜덤함수, 난수 만들기, rand(), rand()%, srand(), time(NULL) (0) | 2023.03.25 |
C언어 21차시 조건문 연습문제 4 (0) | 2023.03.24 |
C언어 20차시 조건문 연습문제 3 (0) | 2023.03.24 |
C언어 19차시 조건문 연습문제 2 (0) | 2023.03.23 |