0부터 9까지 몇번 사용됬는지 저장할 공간을 int형 포인터에 int 자료형 크기로 10개 할당하였다.
자연수 세개를 입력받아, 입력받은 자연수 3개를 곱한다.
곱한 값이 0보다 클때까지 반복하고 반복문 안에는 곱한 값을 10으로 나눈 나머지를 배열의 인덱스로 하여 그 숫자가 나올때 마다 해당 인덱스에 1씩 누적하고 곱한 값을 10으로 나눈다.
할당한 메모리를 해제하고 종료한다.
정답은 다음 코드와 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a, b, c, mul, i;
int *numPtr = (int*)malloc(sizeof(int) * 10);
scanf("%d %d %d", &a, &b, &c);
mul = a * b * c;
while(mul > 0)
{
i = mul % 10;
numPtr[i] = numPtr[i] + 1;
mul /= 10;
}
for(int i=0; i<10; i++)
{
printf("%d\n", numPtr[i]);
}
free(numPtr);
return 0;
}
|
cs |
'Project H4C Study Group' 카테고리의 다른 글
[Project H4C] FTZ Trainer (4 ~ 7) (0) | 2021.03.08 |
---|---|
[Project H4C] FTZ Trainer(1~3) (0) | 2021.03.07 |
[Project H4C][백준][C언어] 1546 : 평균 (0) | 2021.03.06 |
[Project H4C][백준][C언어] 2562 : 최댓값 (0) | 2021.03.06 |
[Project H4C][백준][C언어] 8958 : OX퀴즈 (0) | 2021.03.05 |