///문자열을 입력받아 좌우 대칭후에 출력
#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]부터 역순으로 시작하게해놓은상태야...
어떻게 해야될지 알려줘 ㅜㅜ
와 순간 취소버튼 누를뻔
아니 이 미친세끼가 니가 좆같은 빨갱이 종복세끼냐
str2를 초기화하면 역순저장된게 다 날라가는거아니야 ??
도와줘 ㅜㅜ
둘다 배열 선언할때 초기값으로 빈값 주고 해봐...
아 그말이였구나 고마워 형들!!
너 말듣고 한번 만들어봄(나 C언어 공부하고있는 개 늅늅)
#include <stdio.h>int main(void){ char jun[100]=\"\"; int index = sizeof(jun)-1; int a=1; puts(\"거꾸로만들 문자열을 입력 : \"); gets(jun); int i; for(i=index;i>-1;i--) { printf(\"%c\", jun[i]); }return 0;}
조건만남→【주소▶affn5.w70.kr◀복사】←조건만남◇조건만남◇조건만남━━조건만남