이번에는 반복문중에서 가장 많이 사용되는 for문에 대해 알아볼겁니다.
for문은 while이나 do~while과 달리 변수의 선언과 거짓 또는 참을 표현할 조건, 조건을 만족시키기 위한
값의 증가 및 감소 연산을 한 자리에 묶을 수 있도록 만들어진 반복문입니다.
while문을 통한 Hello World!문장을 3번 출력하는 코드를 일단 제시하면서
반복문에 꼭 필요한 조건 3가지를 알아보겠습니다.
반복문을 실행하기 위해서는 위 조건 3가지가 '꼭' 필요합니다.
while문은 이 반복문이 몇 번 반복하는지 한눈에 알아보기 힘들다는 단점이 있습니다.
그래서 위 조건 3가지를 한곳에 묶은 for문이 등장했죠.
위 조건 3가지를 다음과 같이 부릅니다.
조건 1. 초기식
조건 2. 조건식
조건 3. 증감식
for문은 다음과 같이 사용합니다.
반복의 대상이 한 줄이라면 중괄호가 생략가능하다는 거 배웠죠?
그리고 초기식에 저렇게 변수를 선언하는것은 일부 컴파일러에서는 지원하지 않습니다.
최근 C표준에서는 허용하지만요.
따라서 다음과 같이 작성해야 모든 C컴파일러에서 컴파일이 가능합니다.
이제 while문과 for문의 차이를 그림으로 설명해보겠습니다.
어떤가요? while문에 비해 훨씬 간결해진게 느껴지시나요?
for문의 초기식은 딱 1번만 실행되고, 조건식은 처음부터 실행되며, 증감식은 첫 번째 이후부터(두번째 부터) 실행됩니다.
그런데 여기서 for문은 while문보다 더 간결하고 실행 결과도 완전 동일하니 while문은 이제 안써도 되겠다 라는 생각을 하시는 분도 계실겁니다. 하지만 for문은 for문이 자연스러운때가 있고 while문은 while문이 자연스러운 때가 있습니다.
그래서 for문은 그냥 단순하게 정해진 횟수만 반복할 때 쓰는게 자연스럽습니다.
for문은 초기식 조건식 증감식 중 하나를 빼거나 모두 빼서 for( ; ; ); 와 같은 형태로도 쓸 수 있으며 조건식이 비워져있으면 무조건 '참'으로 인식하게 됩니다.
마지막으로 for문을 이용한 구구단 예제를 제시하고 이번 강의를 마치겠습니다.
실행 결과
다음 강의에서는 조건문 if문에 대해 배우겠습니다.
다음 강의 때 뵙겠습니다.
'C언어 강의' 카테고리의 다른 글
(C언어 강의) Chapter -16 조건문 if~else (0) | 2016.08.26 |
---|---|
(C언어 강의) Chapter -15 조건문 if (0) | 2016.08.22 |
(C언어 강의) Chapter -13 반복명령을 위한 키워드 (do~while) (0) | 2016.08.03 |
(C언어 강의) Chapter -12 반복명령을 위한 키워드(while) (0) | 2016.07.28 |
(C언어 강의) Chapter -11 printf와 scanf함수에 대한 추가적인 이야기 (0) | 2016.07.26 |