Mentoring

[멘토링][c언어]알파벳 개수 문제

seomj 2020. 5. 29. 01:56

#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로 출력을 해준다.