strcmp函数是比较两个字符串的大小。当str1>str2时,返回大于0的数,当str1<str2时,返回小于0的数,当str1=str2时,返回0。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
int Strcmp(const char * str1, const char * str2)
{
assert(str1 != NULL);
assert(str2 != NULL);
while (*str1 != '\0'&&*str2 != '\0')
{
if (*str1 > *str2)
{
return 1;
}
if (*str1 == *str2)
{
str1++;
str2++;
}
if (*str1 < *str2)
{
return -1;
}
}
if (*str1 < *str2)
return -1;
else if (*str1 < *str2)
return 1;
else
return 0;
}
int main()
{
char key[] = "apple";
char buffer[80];
do {
printf("Guess my favorite fruit? ");
fflush(stdout);
scanf("%79s", buffer);
} while (Strcmp(key, buffer) != 0);
puts("Correct answer!");
system("pause");
return 0;
}