[C] 4강. 반복문의 응용

반복문의 응용


반복문의 응용

상태 변수를 이용한 반복

  1. 매회 반복 후 사용자에게 물어서 반복여부를 결정하는 경우


int rep;
rep = 1;

while (rep == 1) {
    printf("hello\n");
    printf("again?\n");
    scanf("%d", &req);
}
int rep;

for (req = 1; req == 1;) {
    printf("hello\n");
    printf("again?\n");
    scanf("%d", &req);
}
int rep;

do {
    printf("hello\n");
    printf("again?\n");
    scanf("%d", &req);
} while (req == 1);


입력 변수를 이용한 반복

  1. 0보다 큰 두 수를 입력받아 합을 출력하는 것을 반복하는 경우
int a, b, sum;
printf("숫자를 입력해주세요\n");
scanf("%c%c", &a, &b);

while (a > 0 || b > 0) {
    sum = a + b;
    printf("입력한 숫자의 합은 %c", sum);
}


예제 : 1~5까지의 곱을 출력하기

int num, prod = 1;

for (num = 1; num < 6; num++) {
    prod = prod * num;
}

printf("%d\n", prod);


연산자와 논리식

연산자

설명 일반적인 것 특수한 것
최우선 () 괄호 [](배열)
단항 ++, –, ! ~(보수)
+,-(부호)
*(pointer)
&(주소지정)
곱셈/나눗셈/나머지 *, /, %  
덧셈/뺄셈 +,-  
shift   «»
관계 <, <=, >=, >  
등가 ==, !=  
bit AND   &
bit XOR   ^
bit OR   |
논리곱 &&  
논리합 ||  
조건   ?:
할당 =, +=, -=, *=, /=, %=  
쉼표   ,


관계연산자


논리연산자


기타 명령

break 명령


continue 명령


switch 문


switch(true) {
    case a == 1:
        printf("a는 1이다.");
        break;
    case a == 2:
        printf("a는 2이다.");
        break;
    case a == 3:
        printf("a는 3이다.");
        break;
    default:
        printf("a는 3보다 크다");
        break;
}