#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
int main()
{
char word[31];
int length;
bool isPalindrome = true;
scanf("%s", word);
length = strlen(word);
for (int i = 0; i < length / 2; i++)
{
if (word[i] == '\0' && word[i] != word[length - 1 - i] != '\0')
{
word[i+1];
}
else if (word[length - 1 - i == '\0'] && word[i] != '\0')
{
word[length -1 - i -1];
}
else if (word[i] != word[length -1-i])
{
isPalindrome = false;
break;
}
}
printf("%d\n", isPalindrome);
return 0;
}
이 코딩으로 심사통과를 못하고 있는데요, 다른방법이 있는거 같습니다만 도무지 생각을 할수 없네요 ㅎㅎ 입력한 문자열의 공백문자를 제거한후에 남은 나머지 문자열로 결과값을 구해야 되나요? 공백문자 제거하는 방법은 아닌거 같구 ㅎ 도무지 아이디어가 떠오르질 않습니다 ㅡ.ㅡ
NULL(\0)을 판단하는 문제가 아닙니다.
'\0'이 아니라 ' ' 공백을 판별해서 무시하면 됩니다.
앞에서 공백을 만나면 1칸 건너뛰고
뒤에서 공백을 만나면 1칸 건너뛰고...
공백이 여러 개 일 수 있으니 while 루프 같은 걸로 모든 공백을 건너 뛰게 해야 겠죠.