#include <stdio.h> int custom_strcmp(const char *a, const char *b) { // Your logic here int r = 0; while (*a != '\0' && *b != '\0') { if (*a != *b) { r =(unsigned char)*a; r -= (unsigned char)*b; return r; } a++; b++; } if (*a) { r =(unsigned char)*a; } else if (*b) { r = -1 * (unsigned char)*b; } return r; } 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; }
Test Cases
Test Results
Input
apple apple
Expected Output
0