gkstjswo12   3년 전

일단 배열이 초기화가 이상합니다. arr[0]만 -1로 출력되고 나머지는 0으로 출력됩니다.

그리고 다른부분도 틀린게 있는지 궁금합니다.

kokodak   3년 전

6번 줄과 같이 초기화를 하게 되면 arr1[0]만 -1이 들어가고 나머지에는 0으로 초기화됩니다. 따라서 -1로 채우고 싶으시다면 for문을 이용하시면 됩니다.

또한 10-12번줄은 연속되는 알파벳의 경우에만 알맞게 동작합니다. abba 와 같은 입력에서는 a가 처음 나온 자리가 0번째임에도 불구하고 3을 출력하게 됩니다.

topgun0209   3년 전

틀린부분은 아니지만 간단한 조언?드리자면

scanf로 받는 문자는 마지막에 \0문자를 추가하므로, 최대 길이가 100글자면 101자리의 배열을 선언하시는게 좋습니다.

현재 문제에서는 앞에서부터 한글자식 처리하므로 문제 없지만, 다른 문제에선 아닐 수 있습니다

또한 'z'는 아스키코드 122로, 현재 arr1에 122+1, 123칸의 배열을 선언한 후 'a'~'z'까지 26칸만 사용중입니다

이것도 현재 문제에선 크게 문제 없지만, 더 효율적으로 사용할 수 있는 부분입니다

댓글을 작성하려면 로그인해야 합니다.