Anagram 문자열 판별하기 [C언어 소스 코드]
"본문 내용"은 언제나 휴일 본 사이트에 있습니다.
#include <stdio.h>
void TestIssAnagram(const char *s1, const char *s2);
int main()
{
TestIssAnagram("silent","listen");
TestIssAnagram("gargen","ranged");
TestIssAnagram("split","lisp");
}
int IsAnagram(const char *s1, const char *s2);
void TestIssAnagram(const char *s1, const char *s2)
{
printf("=== Test %s %s ===\n",s1,s2);
if(IsAnagram(s1,s2))
{
printf("Result: Anagram\n");
}
else
{
printf("Result: Is Not Anagram\n");
}
}
int IsAnagram(const char *s1, const char *s2)
{
int i ,j;
for(i=0;s1[i];i++)//s1[i] 문자가 참이면(거짓은 종료 문자임) 반복
{
for(j=0;s2[j];j++)//s2[j] 문자가 참이면(거짓은 종료 문자임) 반복
{
if(s1[i] == s2[j])//s1[i]와 s2[j]가 같으면
{
break;//반복문 탈출(s2[j]은 참인 상태임)
}
}
if(s2[j]==0)//s2[j] 문자가 거짓이면(같은 문자가 없을 때)
{
return 0;//anagram이 아님
}
}
return 1;//anagram임
}
▷ 실행 결과
=== Test silent listen ===
Result: Anagram
=== Test gargen ranged ===
Result: Anagram
=== Test split lisp ===
Result: Is Not Anagram
프로그래밍 언어 및 기술 학습, 무료 동영상 강의 언제나 휴일
'C언어 > C언어 예제' 카테고리의 다른 글
학생 성적 관리 프로그램(전역변수, 학생구조체, 파일입출력) [C언어 소스] (0) | 2016.07.13 |
---|---|
[C언어 소스] 12345 순환하는 광고판 (0) | 2016.07.04 |
[math.h] scalbn, scalbnf, scalbnl , x곱하기 2의 n승 (0) | 2016.05.13 |
[math.h] logb, logbf, logbl 함수 예제 코드, 밑수가 2인 로그에서 정수 부분 (0) | 2016.05.12 |
[math.h] log2, log2f, log2l 함수 예제 코드, 밑수가 2인 로그 (0) | 2016.05.12 |