[C언어 소스] 문자열 비교하는 함수 만들기
//문자열 비교하는 함수 만들기
#include <stdio.h>
//사전식 비교: 사전에 앞에 나오는 단어가 작고 뒤에 나오는 단어가 크다고 판별
//차이가 없으면 0 반환
int mystrcmp(const char *str1, const char *str2);
int main(void)
{
char names[5][20] =
{
"홍길동","강감찬","이순신","을지문덕","한석봉"
};
char name[20];
int i = 0;
int value;
printf("검색할 이름 :");
scanf_s("%s", name, sizeof(name));
printf("사전식 비교: 사전에 앞에 나오는 단어가 작고 뒤에 나오는 단어가 크다고 판별\n");
for (i = 0; i<5; i++)
{
value = mystrcmp(name, names[i]);
if (value == 0)//차이가 없을 때
{
printf("인덱스 %d에서 %s를 찾았습니다. \n", i, name);
}
else
{
if (value>0)
{
printf("%s > %s \n", name, names[i]);
}
else
{
printf("%s < %s \n", name, names[i]);
}
}
}
return 0;
}
int mystrcmp(const char *str1, const char *str2)
{
//str1이 가리키는 문자가 종료 문자나 str1과 str2가 가리키는 문자가 다를 때까지 반복
for (; *str1 && (*str1 == *str2); str1++, str2++);
return *str1 - *str2;
}
'C언어 > C언어 예제' 카테고리의 다른 글
[C언어 소스]문자열 복사하는 함수 만들기 (0) | 2016.04.12 |
---|---|
[C언어 소스]부분 문자열 비교하는 함수 만들기 (0) | 2016.04.12 |
[C언어 소스] 문자열 길이 계산 함수 만들기 (0) | 2016.04.12 |
[C언어 소스] 1월 1일 요일 입력받아 달력 출력 (0) | 2016.04.12 |
[C언어 소스] 년도와 일수 입력받아 시각 출력 (0) | 2016.04.12 |