프로그래밍/C

[백준_2577] 숫자의 개수(배열 0으로 초기화)

O'bin 2022. 2. 20. 00:22

<내 코드>

 

 

<다른 방법>

int num[10] = { 0, };
	
    while (result > 0) {
		num[result % 10]++;
		result /= 10;
	}

	for (int i = 0; i < 10; i++) { printf("%d\n", num[i]); }

자릿수에 해당하는 num 인덱스 값을 증가시켜줌

예를 들어, 자릿수가 2면 num[2]의 값 1 증가, 자릿수가 8이면 num[8]의 값 1 증가하는 방식

이렇게 하면 내가 작성한 코드 10~28행을 아래와 같이 짧게 줄일 수 있다.

 

 

<최종 정리>

#include <stdio.h>

int main() {
	int a, b, c;
	int result;
	
    scanf("%d %d %d", &a,&b,&c);
	
    result = a * b * c;
	int num[10] = { 0, };
	
    while (result > 0) {
		num[result % 10]++;
		result /= 10;
	}

	for (int i = 0; i < 10; i++) { printf("%d\n", num[i]); }

}

 

+) 배열 이름[]={0, } 이렇게 하면 배열 모든 값 0으로 초기화

'프로그래밍 > C' 카테고리의 다른 글

[백준_1152] 단어의 개수  (0) 2022.03.01
[백준_10809] 알파벳 찾기  (0) 2022.02.26
[백준_11720] 숫자의 합  (0) 2022.02.26
[백준_10951] A+B - 4 (EOF)  (0) 2022.02.17