본문 바로가기
개발/C,C++,C#

[문제풀이] 사용자로부터 –1이 입력될 때까지 정수값들을 읽어 들여서 이 중 0의 개수와 1~100의 개수, 101~1000의 개수, 1001~10000의 개수, 그리고 10000 이상의 개수를 출력하는 프로그램을 작성하시오.

by 비트-바이트 2024. 4. 25.
반응형

사용자로부터 –1이 입력될 때까지 정수값들을 읽어 들여서 이 중 0의 개수와 1~100의 개수, 101~1000의 개수, 1001~10000의 개수, 그리고 10000 이상의 개수를 출력하는 프로그램을 작성하시오.

 

#include <stdio.h>

int main() {
    int num;
    int count_0 = 0, count_1_to_100 = 0, count_101_to_1000 = 0, count_1001_to_10000 = 0, count_above_10000 = 0;

    printf("정수를 입력하세요. 종료하려면 -1을 입력하세요.\n");

    while (1) {
        scanf("%d", &num);
        if (num == -1) {
            break; // -1 입력 시 반복문 종료
        }

        if (num == 0) {
            count_0++;
        } else if (num >= 1 && num <= 100) {
            count_1_to_100++;
        } else if (num >= 101 && num <= 1000) {
            count_101_to_1000++;
        } else if (num >= 1001 && num <= 10000) {
            count_1001_to_10000++;
        } else if (num > 10000) {
            count_above_10000++;
        }
    }

    printf("0의 개수: %d\n", count_0);
    printf("1~100의 개수: %d\n", count_1_to_100);
    printf("101~1000의 개수: %d\n", count_101_to_1000);
    printf("1001~10000의 개수: %d\n", count_1001_to_10000);
    printf("10000 이상의 개수: %d\n", count_above_10000);

    return 0;
}
반응형