///문자열을 입력받아 좌우 대칭후에 출력
#include <stdio.h>
#include <String.h>

int main(void)
{
        char str[100];
        char str2[100];
        int str_len;
        int index;
        int i;
        //str에 문자열입력
        gets(str);
        //문자열길이
        str_len=strlen(str);
        // n 번째 인덱스
        index=str_len-1;
        //입력한 문자열을 str2에 역순으로 복사
        for(i=0; i<str_len; i++)
        {
                str2[index]=str[i];
                index--;
        }

        //str2 배열요소확인용
        for(i=0; i<str_len; i++)
                printf("str2[%d] : %c \n", i, str2[i]);
        printf("\n");
        //str2 출력확인                                                             <-----여기서부터 에러
        puts(str2); //글자가 깨짐
        //str2 문자열을 str 문자열에 연결
        strcat(str, str2); //오류
        //출력
        puts(str);
        return 0;
}

문자열을 입력받아 좌우 대칭후에 출력 하는 프로그램인데
str1에 입력을받고 str2에 역순으로 옮기고 strcat으로 통합하게 구성해봤어
근데 사진처럼 오류가나..
공백때문인가? 싶어서 str[0]에는 공백이 오게해놓고 str[1]부터 역순으로 시작해놨더니
실행후 오류는안뜨는데 puts(str2) 에서 공백때문에 아무것도안뜨고 합쳐놔도 원래의 str1 만 출력이되는꼴이 되버리네??
결국 이생각은 버리고 처음의생각으로 str[0]부터 역순으로 시작하게해놓은상태야...
어떻게 해야될지 알려줘 ㅜㅜ