c语言实现字符串比较函数 c语言中字符串比较
如何用C语言编写一程序,实现对两个字符串进行比较,然后输出两个字符串中第一个不同字符的ASCII码之差
1、首先比较字符串的大小,我们可以直接用比较符号来比较就行了,比如大于符号。
创新互联建站专注于企业成都全网营销、网站重做改版、南靖网站定制设计、自适应品牌网站建设、H5建站、商城网站定制开发、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为南靖等各大城市提供网站开发制作服务。
2、运行后,得到结果,因为'abc'这个字符串是小于‘cde’这个字符串的,所以结果显示为false是对的。
3、除了用大于来比较,我们还可以用等号来比较,这也是经常用来比较字符串的符号,比如比较输入密码和数据库的密码是否相等。
4、运行结果是false,很显示,我们比较的二个字符串是不相等的。
5、函数是按字节来比较的,是比较安全的比较函数,其接受二个参数,当参数1比参数2小时,返回的结果小于0,当参数1比较参数2大时,返回大于0的结果,当二者相等,则返回0。
6、运行结果,二个比较都返回小于0的数字。
编写一个C语言函数,比较两个字符串的大小
#includestdio.h
#define
N
100
int
input(char*a,char*b)//输入两个字符串
{
printf("Input
the
first
information:\n");
fgets(a,N,stdin);
printf("Input
the
secend
information:\n");
fgets(b,N,stdin);
}
int
my_strcmp(char*a,char*b)//比较字符串每个字符的大小
{
while((*a!='\0')(*b!='\0'))
{
if(*a*b)
{
return
0;
}
else
if(*a*b)
{
return
1;
}
else
{
a++;
b++;
}
}
if((*a=='\0')(*b!='\0'))//字符串b比字符串a长
{
return
1;
}
else
if((*a!='\0')(*b=='\0'))//字符串a比字符串b长
{
return
0;
}
else
{
return
2;
}
}
int
main()
{
char
a[N]={0};
char
b[N]={0};
int
net2=0;
input(a,b);//调用输入函数
net2=my_strcmp(a,b);//调用比较大小函数
if(0==net2)//输出大小
{
printf("ab\n");
}
else
if(1==net2)
{
printf("ab\n");
}
else
{
printf("a=b\n");
}
return
0;
}
扩展资料:
一、return在函数中的作用
我们如果将函数看做一个加工厂,参数就是我们向加工厂投入的原料,具体的函数功能实际上就是加工的过程,而return语句代表返回值,就是加工厂在实现加工之后给“投资人”的成品。
二、return语句的特点
1、在函数当中,遇到return语句之后就意味着函数运行的结束,在此之后的代码是不运行的。
2、它不支持任何运算也没有任何内建方法,和任何其他的数据类型比较是否相等时永远返回false,也可以将None赋值给任何变量。
3、执行到return语句时,会退出函数,return之后的语句不再执行。但将return语句放在try语句块中,是个例外。
三、return的默认值:return函数默认的返回值为undefined。
C语言字符串比较
strcmp(str1,str2)函数是比较两个字符串的函数:
设这两个字符串为str1,str2,
若str1==str2,则返回零;
若str1str2,则返回正数;
若str1str2,则返回负数。
例如:
该函数的原型声明:
extern int strcmp(const char *s1,const char *s2);
那么,strcmp函数的声明规则是什么?它如何比较两个字符串的大小?
规则如下:
当s1s2时,返回为负数;
当s1=s2时,返回值= 0;
当s1s2时,返回正数;
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:
"A""B" "a""A" "computer""compare"
特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
ANSI标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。
所以:
用它比较Follow me和Computer design的话,它会只比较F与C这两个字符串的首元素的大小,所以Follow me 比较大。
C语言字符串比较函数
#includestring.h
#includestdio.h
void main()
{
char str1={"abc"},str2={"485afsd"};
if(strcmp(str1,str2)0) printf("yes");
} 去掉个o就可以了,楼主要多看看编译器的使用方法,是什么错误在下方是有提示的
网站栏目:c语言实现字符串比较函数 c语言中字符串比较
URL分享:http://azwzsj.com/article/dohdoec.html