zerofunc

반복문 - for문 본문

IT/C언어

반복문 - for문

0penster 2013. 11. 30. 03:14

이번 예제는 반복문으로

전에쓴 while문과는 다르게

형식이 while문에비해 비교적 복잡하다.

그러나 for문은 가독성이 while문보다 좋기에

실제 업무에서는

for문이 자주 쓰인다고 하니

알아두는게 좋다.

for문의 사용법은 아래와 같다.

for( '초기화', '조건', ;증감;){

//내용

}

순서는

초기화 -> 조건-> 내용->증감 ->조건->내용->

이러하다.

초기화는 한번만해주고

그다음은 조건을보면서 '참'이면 안에있는 내용을 실행하고 값을 증가시킨다.

대부분

for문을 쓸때 변수를

i라 선언하는게 대다수이다.


또한, 

int 형 변수 'i'가 있다치면

증감연산자에서 i++ , ++i, --i ,i--, 그냥 내용을 비울수도있다.

i++이나 i--보다

++i나 --i가 훨씬 빠르기에 

그이유는 i++이나i--는 i를 메모리에 찾아가서 무슨 값인지 안다음

값을 증가시키는건데

전위 증감연산자는 먼저 증가시키고 메모리에 찾아가기때문에

나중에 큰 프로젝트로 많은것을 돌릴때에는

전위증감 연산자를 활용하는게 최적화를 하는 소소한 팁이다.


1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <conio.h>
 
void main(){
    int al='A',i;
    for(i=0;i<='Z'-'A';++i){
        printf("%c",al++);
    }
    printf("\n");
    getch();
}
cs


이 예제를 보자면

int형 변수  al이 'A'라는 값을 아스키코드로 받아서 65로 가지고있다.

이것을 %c로 출력을 하면 'A'라는 글자가 나올것이다.

조건 연산자에 i <= 'Z'-'A'인데

이뜻은 'Z'가 가진 아스키코드 값에서 'A'가 가진 값을 뺀다는 건데

이건 A~Z까지의 알파벳의 수를 의미한다.

그러므로 for문은 알파벳수만큼 반복될것이며

printf("%c",al++);은

al을 출력한다음 더한다는 뜻이므로

printf("%c",al);

al++;

보다 소스를 줄일수 있어

이러한 소소한 팁도있다.



'IT > C언어' 카테고리의 다른 글

사용자 정의 함수 - 작은값  (0) 2013.11.30
반복문 응용 - 최대값구하기 ! (삼항연산자)  (0) 2013.11.30
반복문 - While  (0) 2013.11.30
C언어 기초 - 연산자  (0) 2013.11.29
링크드 리스트를 이용한 스택과 큐  (0) 2013.11.29
Comments