不太对!
#include <stdio.h>
int strcmp (char * p1,char * p2)
{
int i,flag;
flag = 1;
for (i = 0; flag == 1 && p1[i] != '\0' && p2[i] != '\0'; i++)
{
if (p1[i] != p2[i])
{
flag = 0;
}
}
if (flag == 1)
{
return (0);
}
else
return (p1[i] - p2[i]);
}
int main (void)
{
char str1[100],str2[100];
int a;
printf_s ("Input str1:\n");
gets_s (str1);
printf_s ("Input str2:\n");
gets_s (str2);
a = strcmp (str1,str2);
printf_s ("\n%d",a);
}
for (i = 0; flag == 1 && p1[i] != '\0' && p2[i] != '\0'; i++)
{
if (p1[i] != p2[i])
{
flag = 0;
//这里直接break, 不做i++操作
break;
}
}