티스토리 뷰

C

C언어 팰린드롬(Palindrome) 회문 확인 예제

j0n9m1n1 j0n9m1n1 2018.03.22 23:02

#include "stdafx.h"

/*

2014244057 이종민

string.h안쓰고

회문인지 아닌지 판단하기

if arr[?] = "level"

i = 0부터 증가하고 k = 마지막 인덱스 5부터 감소하며 회문의 조건을 충족하는지 비교함

*/

int main() {


char str[100];

int i, j, k, length = 0, chk = 0;

printf("문자열을 입력받아 회문인지 아닌지 확인하는 프로그램 입니다.\n");


while (str[0] != 'N') {


printf("검사할 문자열을 입력하세요('N'은 종료): ");

gets(str);


for (i = 0; i < 100; i++) {

//문자열의 길이 구하기

if (str[i] != '\0')

length++;


else

break;

}

for (j = 0, k = length - 1; j < length; j++, k--) {

//문자열의 첫번째 원소와 마지막 원소부터 서로 증가, 감소 하며 비교함

if (str[j] != str[k]) {


chk++;

break;

}


else {}

}


if (chk > 0)

printf("%s 은(는)회문이 아닙니다.\n\n", str);


else if (chk == 0)

printf("%s 은(는)회문 입니다.\n\n", str);


length = 0;

chk = 0;

}

}

댓글
댓글쓰기 폼