1、首先比較字符串的大小,我們可以直接用比較符號(hào)來(lái)比較就行了,比如大于符號(hào)。
創(chuàng)新互聯(lián)建站專(zhuān)注于企業(yè)成都全網(wǎng)營(yíng)銷(xiāo)、網(wǎng)站重做改版、南靖網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5建站、商城網(wǎng)站定制開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為南靖等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
2、運(yùn)行后,得到結(jié)果,因?yàn)?abc'這個(gè)字符串是小于‘cde’這個(gè)字符串的,所以結(jié)果顯示為false是對(duì)的。
3、除了用大于來(lái)比較,我們還可以用等號(hào)來(lái)比較,這也是經(jīng)常用來(lái)比較字符串的符號(hào),比如比較輸入密碼和數(shù)據(jù)庫(kù)的密碼是否相等。
4、運(yùn)行結(jié)果是false,很顯示,我們比較的二個(gè)字符串是不相等的。
5、函數(shù)是按字節(jié)來(lái)比較的,是比較安全的比較函數(shù),其接受二個(gè)參數(shù),當(dāng)參數(shù)1比參數(shù)2小時(shí),返回的結(jié)果小于0,當(dāng)參數(shù)1比較參數(shù)2大時(shí),返回大于0的結(jié)果,當(dāng)二者相等,則返回0。
6、運(yùn)行結(jié)果,二個(gè)比較都返回小于0的數(shù)字。
#includestdio.h
#define
N
100
int
input(char*a,char*b)//輸入兩個(gè)字符串
{
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)//比較字符串每個(gè)字符的大小
{
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(chǎn)長(zhǎng)
{
return
1;
}
else
if((*a!='\0')(*b=='\0'))//字符串a(chǎn)比字符串b長(zhǎng)
{
return
0;
}
else
{
return
2;
}
}
int
main()
{
char
a[N]={0};
char
b[N]={0};
int
net2=0;
input(a,b);//調(diào)用輸入函數(shù)
net2=my_strcmp(a,b);//調(diào)用比較大小函數(shù)
if(0==net2)//輸出大小
{
printf("ab\n");
}
else
if(1==net2)
{
printf("ab\n");
}
else
{
printf("a=b\n");
}
return
0;
}
擴(kuò)展資料:
一、return在函數(shù)中的作用
我們?nèi)绻麑⒑瘮?shù)看做一個(gè)加工廠,參數(shù)就是我們向加工廠投入的原料,具體的函數(shù)功能實(shí)際上就是加工的過(guò)程,而return語(yǔ)句代表返回值,就是加工廠在實(shí)現(xiàn)加工之后給“投資人”的成品。
二、return語(yǔ)句的特點(diǎn)
1、在函數(shù)當(dāng)中,遇到return語(yǔ)句之后就意味著函數(shù)運(yùn)行的結(jié)束,在此之后的代碼是不運(yùn)行的。
2、它不支持任何運(yùn)算也沒(méi)有任何內(nèi)建方法,和任何其他的數(shù)據(jù)類(lèi)型比較是否相等時(shí)永遠(yuǎn)返回false,也可以將None賦值給任何變量。
3、執(zhí)行到return語(yǔ)句時(shí),會(huì)退出函數(shù),return之后的語(yǔ)句不再執(zhí)行。但將return語(yǔ)句放在try語(yǔ)句塊中,是個(gè)例外。
三、return的默認(rèn)值:return函數(shù)默認(rèn)的返回值為undefined。
strcmp(str1,str2)函數(shù)是比較兩個(gè)字符串的函數(shù):
設(shè)這兩個(gè)字符串為str1,str2,
若str1==str2,則返回零;
若str1str2,則返回正數(shù);
若str1str2,則返回負(fù)數(shù)。
例如:
該函數(shù)的原型聲明:
extern int strcmp(const char *s1,const char *s2);
那么,strcmp函數(shù)的聲明規(guī)則是什么?它如何比較兩個(gè)字符串的大???
規(guī)則如下:
當(dāng)s1s2時(shí),返回為負(fù)數(shù);
當(dāng)s1=s2時(shí),返回值= 0;
當(dāng)s1s2時(shí),返回正數(shù);
即:兩個(gè)字符串自左向右逐個(gè)字符相比(按ASCII值大小相比較),直到出現(xiàn)不同的字符或遇'\0'為止。如:
"A""B" "a""A" "computer""compare"
特別注意:strcmp(const char *s1,const char * s2)這里面只能比較字符串,即可用于比較兩個(gè)字符串常量,或比較數(shù)組和字符串常量,不能比較數(shù)字等其他形式的參數(shù)。
ANSI標(biāo)準(zhǔn)規(guī)定,返回值為正數(shù),負(fù)數(shù),0 。而確切數(shù)值是依賴(lài)不同的C實(shí)現(xiàn)的。
所以:
用它比較Follow me和Computer design的話,它會(huì)只比較F與C這兩個(gè)字符串的首元素的大小,所以Follow me 比較大。
#includestring.h
#includestdio.h
void main()
{
char str1={"abc"},str2={"485afsd"};
if(strcmp(str1,str2)0) printf("yes");
} 去掉個(gè)o就可以了,樓主要多看看編譯器的使用方法,是什么錯(cuò)誤在下方是有提示的