#include <stdio.h>
#include <string.h>
void main() {
int len, i;
int arr[255] = { 0, };
char str[10];
gets(str, 10);
len = strlen(str);
for (i = 0; i < len; i++) {
arr[str[i]]++;
}
for (i = 'A'; i <= 'z'; i++) {
if (arr[i] > 0) {
printf("%c %d\n", i, arr[i]);
}
}
return 0;
}
검색을 통해서 풀었다.. 아직도 왜 arr에 255를 준 것인지는 잘 모르겠다.. 다들 255를 주었다..
str에 문자열을 입력받고 for문을 통해서 arr에 받아준 문자열의 길이를 구해준다. 이를 통해 다음 반복문 안에 조건에 쓸 것이다. for문에서 a부터 z까지 반복하며 arr이 0보다 크다는 것은 위의 for문을 통해 그 자리에 문자열이 들어있는 것을 알 수 있고 이러한 조건식을 통해 printf로 출력을 해준다.
'Mentoring' 카테고리의 다른 글
[멘토링][c언어] 백준 10809번 : 알파벳 찾기 (포인터 사용) (0) | 2020.06.03 |
---|---|
[멘토링][c언어]백준 2562번 : 최댓값 (포인터 사용) (0) | 2020.06.01 |
[멘토링][c언어]백준 1152번 : 단어의 개수 (0) | 2020.05.28 |
[멘토링][c언어]백준 2675번 : 문자열 반복 (0) | 2020.05.28 |
[멘토링][c언어] 다섯 번째 수업 (0) | 2020.05.23 |