#include
int palindrome(char *);
void main()
{
char chr[100];
int res;
printf("# 문자열을 입력하시오. : ");
scanf("%s",chr);
fflush(stdin);
res = palindrome(chr); // 입력 받은 문자열이 화문인지 검사함수 호출
if( res == 1){
printf("\"%s\"문자열은 회문입니다.\n",chr);
}
else if (res == 0){
printf("\"%s\"문자열은 회문이 아닙니다.\n",chr);
}
}
int palindrome(char *p)
{
int i,size,chp=0; //글자열의 길이를 반으로 나누었을때 수와 앞뒤글자가 같은 수가 같아야 회문
size = strlen(p);
for(i = 0 ; i < size ; i++){
if(p[i] >= 'a' && p[i] <= 'z'){ p[i] -= 'a' - 'A';} //대문자로 바꿔준다.
}
for(i = 0 ; i < size/2 ; i++){ //문자열 반만 검사
if(p[i] == p[size-1-i]){ //문자열처음과 끝 검사
chp++;
}
}
if((size/2) == chp ) { return 1;}
else { return 0; }
}
댓글 없음:
댓글 쓰기