For loop
포스트 난이도: HOO_Intern
# For loop
For loop이란 반복문의 한 종류로써 한국에서 For문이라고 불리는 조건식을 가지고 있는 반복문이다.
While문에서는 조건이 참일 경우 블록 안에 있는 내용을 반복하지만 for문은 정해진 범위 안에서 반복이 이루어진 뒤에 끝이 나는 방식이다.
따라서 While문에서 발생할 수 있는 infintie loop, 즉 무한 루프와 같은 문제가 For문에서는 범위 값이 조건에 선언되어 있기 때문에 발생하지 않는다.
For 문의 구조는 아래와 같다.
for(satement1; statement2; statement3)
{
// for block
}
statement 또는 condition이라고 불리는 조건식을 for문은 3개를 가지고 있다.
statement1부터 순서대로 초기식, 범위식, 증감식을 나타낸다.
또는 초기값, 범위값, 증감 식이라도 부르는데, statement1의 경우에는 for문이 시작하는 값을 나타내며 statement 2는 for문이 최대 얼마까지 반복할 것인지를 나타내는 범위 값을 나타내기 때문이다.
마지막으로 증감식은 for문이 원하는 만큼 반복이 이루어지고 종료되기 위해서 초기값이 범위값까지 도달하는 증감에 대한 조건을 제시하는 부분이 바로 마지막 statement3인 증감식 부분이다.
아래의 간단한 for문 예제를 살펴보면 이해하기 수월할 것이다.
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 10; i++) {
cout << i;
}
return 0;
}
0123456789
위의 예제를 살펴보면 for문을 사용하는데 초기값이 0부터 10 미만까지 반복이 이루어지며, count을 위해 정의된 i라는 변수는 for문 반복이 이루어질 때마다 1씩 증가한다는 것을 증감식을 통해 알 수 있다.
for문의 반복 횟수를 나타내 주는 변수는 주로 i나 j를 사용하며, count를 작성해주기도 한다.
물론 아무 변수명이나 사용해도 되지만 배열 부분이나 nested 반복문으로 이루어질 경우, 변수를 구분하기 위하여 i와 j를 사용하고 단순 count가 이루어지는 경우에는 변수명 자체를 count라고 하여 가독성을 높인다.
결과적으로 이 예제를 실행시키면 출력되는 값은 0부터 9까지 출력이 된다.
for문을 사용할때 유의할 점은 조건식을 구분할 때 Comma로 구분해주는 것이 아니라 Semicolon으로 구분을 해준다는 점이다.
또한 다른 조건문처럼 for문의 경우에도 nested가 가능하다.
한마디로 for문 안에 for문을 구성할 수가 있다.
'C and C++' 카테고리의 다른 글
[C Language] 동적 메모리 할당(Dynamic Memory Allocation): Realloc Function (0) | 2022.05.31 |
---|---|
[C Language] 동적 메모리 할당: Malloc Function (0) | 2022.05.30 |
stack functions(stack.empty(), stack.size()) (0) | 2020.05.03 |
stack functions(stack.push(), stack.top(), stack.pop()) (0) | 2020.05.03 |
[C++] Queue(큐)란? (0) | 2020.05.02 |
댓글