Implement Custom strcmp function

Code

#include <stdio.h>

int custom_strcmp(const char *a, const char *b) {
    // Your logic here
/*signed int result =0;
int i=0;
int len1=0;
int len2=0;
while(a[len1]!='\0')
{
    len1++;
}

while(b[len2]!='\0')
{
    len2++;
}

if(len1> len2)
{
    result = 100;
    return result;
}
else if(len1<len2)
{
    result = -100;
    return result;
}
    while(a[i] != '\0')
    {
        if(a[i] != b[i])
        {
            result =1;
            return result;
            break;
        }
        else
        {
            return result;
        }
        
    }
    */
while(*a &&(*a == *b))
{
    a++;
    b++;
}
return (unsigned char)*a -(unsigned char)*b;
}
int main() {
    char a[101], b[101];
    fgets(a, sizeof(a), stdin);
    fgets(b, sizeof(b), stdin);

    // Remove newline
    int i = 0;
    while (a[i]) {
        if (a[i] == '\n') { a[i] = '\0'; break; }
        i++;
    }
    i = 0;
    while (b[i]) {
        if (b[i] == '\n') { b[i] = '\0'; break; }
        i++;
    }

    printf("%d", custom_strcmp(a, b));
    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

apple apple

Expected Output

0