在C語(yǔ)言中比較字符串大小,可以使用庫(kù)函數(shù)strcmp,也可以自己編寫(xiě)比較函數(shù)。
10多年的留壩網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整留壩建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“留壩網(wǎng)站設(shè)計(jì)”,“留壩網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
1、使用庫(kù)函數(shù)。
需要包含頭文件string.h。聲明為:
int strcmp(const char *s1, const char *s2);
會(huì)根據(jù)字典序比較s1和s2, 如果二者相等,則返回0;如果s1較小則返回-1;如果s1較大則返回1。
比如
strcmp("123", "123") 結(jié)果為0。
strcmp("123", "456") 結(jié)果為-1。
strcmp("456", "123") 結(jié)果為1。
2、自定義函數(shù)。
實(shí)現(xiàn)字符串比較的方法有很多,其基本原理為按字節(jié)比較。
舉例如下:
int?my_strcmp(char?*s1,?char?*s2)
{
int?i;
for(i?=?0;?s1[i]?==?s2[i]??s1[i]!=0;?i++);//循環(huán)比較,達(dá)到結(jié)束或者出現(xiàn)不相等值時(shí)退出循環(huán)。?
if(s1[i]?==?s2[i])?return?0;//代表全部相等,返回0
if(s1[i]s2[i])?return?-1;//s1較小,返回-1。
return?1;//s1較大,返回1.
}
代碼如下:
#include?stdio.h
#include?stdlib.h
int?max(int?a,?int?b)?
{
return?a??b???a?:?b;
}
int?main()
{
int?i,?m,?n;
scanf("%d",?m);
for?(i?=?1;?i??8;?i++)?{
scanf("%d",?n);
m?=?max(m,?n);
}
printf("最大數(shù):%d\n",?m);
system("pause");
return?0;
}
運(yùn)行結(jié)果:
#includelt;stdio.hgt;
#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(*agt;*b)
{
return 0;
}
else if(*alt;*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("agt;b\n");
}
else if(1==net2)
{
printf("alt;b\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。
從左向右逐個(gè)字符進(jìn)行比較。比較原則為空格最小,數(shù)字大寫(xiě)字母小寫(xiě)字母。
同為數(shù)字、大寫(xiě)字母、小寫(xiě)字母則'0''9'、'A''Z'、'a''z'。
若有比較結(jié)果為二個(gè)字符不相等,則二個(gè)字符串的比較結(jié)束。字符比較大小的結(jié)果,就是字符串大小比較的結(jié)果。
如果二個(gè)字符串的前若干個(gè)字符逐一對(duì)應(yīng)相同,字符串長(zhǎng)度也相同,則兩個(gè)字符串相等。
如果二個(gè)字符串的前若干個(gè)字符逐一對(duì)應(yīng)相同,字符串長(zhǎng)度不相同,則較長(zhǎng)的那個(gè)字符串為大。
使用函數(shù)strcmp(s1,s2),需要包含頭文件string.h
若結(jié)果為正,表示s1s2;
若結(jié)果為負(fù),表示s1s2;
若結(jié)果為0,表示s1==s2;
分享標(biāo)題:c語(yǔ)言有比大小的函數(shù)嗎 c語(yǔ)言編程比較大小
地址分享:http://www.rwnh.cn/article12/dopppgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、軟件開(kāi)發(fā)、建站公司、自適應(yīng)網(wǎng)站、品牌網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
移動(dòng)網(wǎng)站建設(shè)知識(shí)