문자열 함수 구현(int strcmp(char *s1, char*s2)
2010. 3. 30. 17:46ㆍ2010년/연습문제
#include<string.h>안에 있는 함수가 많다 그중 int strcmp()함수를 내가 구현해보았다.
#include<stdio.h>
int sys_strcmp(char *s1, char *s2);
int main()
{
char stringA[80];
char stringB[80];
gets(stringA);
gets(stringB);
printf("compare string: %d\n",sys_strcmp(stringA,stringB));
return 0;
}
int sys_strcmp(char * s1, char * s2)
{
int inum;
while(1)
{
if(*s1>*s2)
{
inum=1;
break;
}
else if(*s1<*s2)
{
inum=-1;
break;
}
else if(*s1==*s2)
{
if(*s1!='\0'&&*s2=='\0')
{
inum=1;
break;
}
else if(*s1=='\0'&&*s2!='\0')
{
inum=-1;
break;
}
else if(*s1!='\0'&&*s2!='\0')
{
s1++;
s2++;
}
else
{
inum=0;
break;
}
}
}
return inum;
}
기본적으로 비교되는 stringA와 stringB를 비교해서 사전상의 두안에 char가 stringA가 크면 1 작으면 -1 같으면 0을 출력한다.
'2010년 > 연습문제' 카테고리의 다른 글
문자열 함수 구현 (char *strcpy(char *s1,char *s2) (0) | 2010.03.30 |
---|---|
문자열 함수 구현 (int strncmp(char *s1,char *s2,int n) (0) | 2010.03.30 |
6장 연습문제 11번 (0) | 2010.03.28 |
6장 연습문제 10번 (0) | 2010.03.28 |
6장 연습문제 9번 (0) | 2010.03.28 |