c语言的比较函数
strcmp(s1,s2)
当s1<s2时,返值<0
当s1=s2时,返值=0
当s1>s2时,返值>0
比较过程:两个字符串自左向右逐个字符比较,ASCII值大者为大,直到出现不同的字符或遇'\0'为止。
如在下面的程序中分别用
gets(str1);输入abc
gets(str2);输入acd
strcmp(str1,str2)在比较到第2个字符时出现不同,且a<c,结果指印出来的是串2:acd。
#include <stdio.h>
#include<string.h>
void main()
{
char str1[20],str2[20];
printf("enter string1:");
gets(str1);
printf("\nenter string2:");
gets(str2);
if(strcmp(str1,str2)>0)
{
printf("%s",str1);
}
else
{
printf("%s",str2);
}
}
strcmp(s1,s2)
当s1<s2时,返值<0
当s1=s2时,返值=0
当s1>s2时,返值>0
比较过程:两个字符串自左向右逐个字符比较,ASCII值大者为大,直到出现不同的字符或遇'\0'为止。
如在下面的程序中分别用
gets(str1);输入abc
gets(str2);输入acd
strcmp(str1,str2)在比较到第2个字符时出现不同,且a<c,结果指印出来的是串2:acd。
#include <stdio.h>
#include<string.h>
void main()
{
char str1[20],str2[20];
printf("enter string1:");
gets(str1);
printf("\nenter string2:");
gets(str2);
if(strcmp(str1,str2)>0)
{
printf("%s",str1);
}
else
{
printf("%s",str2);
}
}
此程序的运行结果: