這個(gè)函數(shù)是用于比較字符串中字符值的大小的、從第一個(gè)字符開(kāi)始比較,對(duì)相比較的兩個(gè)字符串的第一個(gè)字符s1、s2;
站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到延川網(wǎng)站設(shè)計(jì)與延川網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國(guó)際域名空間、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋延川地區(qū)。
當(dāng)s1s2時(shí),返回值0
當(dāng)s1s2時(shí),返回值0
,若相等,則繼續(xù)比較。如果兩個(gè)字符串相等,則返回值為0
#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è)加工廠(chǎng),參數(shù)就是我們向加工廠(chǎng)投入的原料,具體的函數(shù)功能實(shí)際上就是加工的過(guò)程,而return語(yǔ)句代表返回值,就是加工廠(chǎng)在實(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。
代碼如下:
#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é)果:
你的程序和例題的程序思想上實(shí)際上是一模一樣的,只是你的程序中兩個(gè)函數(shù)接口名換了而已;
你要知道,被調(diào)用函數(shù)中函數(shù)頭中的變量名與調(diào)用函數(shù)參數(shù)是無(wú)關(guān)的,也就是說(shuō)你沒(méi)必要寫(xiě)成void inverse( int a[],int n),你寫(xiě)成void inverse( int b[],int n)也是可以的,只要本函數(shù)內(nèi)保持一致就沒(méi)有問(wèn)題;
再就是,你用數(shù)組名作參數(shù),也就是你的void inverse( int a[],int n),實(shí)際上程序運(yùn)行時(shí)還是用的數(shù)組的地址,與void inverse( int *a,int n)是完全一樣的,等價(jià)的,所以跟void inverse( int *p,int n)也是完全等價(jià)的!
總之,你的程序與例題程序基本上的等價(jià)的,只是你的程序還多了個(gè)變量*p(被調(diào)用函數(shù)inverse中只需要兩個(gè)指針型變量)?。?!
主函數(shù)我覺(jué)得你的輸出比例題的簡(jiǎn)單,也少個(gè)指針變量,這是不錯(cuò)的,簡(jiǎn)單就是最好的!也許例題是想告訴你怎么使用指針移動(dòng)實(shí)現(xiàn)數(shù)組輸出吧,呵呵?。?!
strcmp是字符串比較函數(shù),調(diào)用形式為strcmp(字符串1,字符串2);
功能:字符串1與字符串2比較,如果字符串1==字符串2,則函數(shù)值為0,1大于2,則為正整數(shù),1小于2,則為負(fù)整數(shù);
從兩個(gè)字符串的第一個(gè)字符開(kāi)始逐個(gè)進(jìn)行比較(按照ascii碼
的大小進(jìn)行比較),之道出現(xiàn)不同的字符或遇到“\0”為止。例如:char*str1=hello,*str2=void;則strcmp(str1,str2)0;因?yàn)椤甴’'v';
(1)strcmp是比較兩個(gè)字符串的大小,兩個(gè)字符串相同時(shí)返回0,第一個(gè)字符串大于第二個(gè)字符串時(shí)返回一個(gè)正值,否則返回負(fù)值.
(2)比較兩個(gè)字符串的算法是:逐個(gè)比較兩個(gè)串中對(duì)應(yīng)的字符,字符大小按照ASCII碼值確定,從左向右比較,如果遇到不同字符,所遇第一對(duì)不同字符的大小關(guān)系就確定了兩個(gè)字符串的大小關(guān)系,如果未遇到不同字符而某個(gè)字符串首先結(jié)束,那么這個(gè)字符串是較小的,否則兩個(gè)字符串相等。
擴(kuò)展資料:
通常以串的整體作為操作對(duì)象,如:在串中查找某個(gè)子串、求取一個(gè)子串、在串的某個(gè)位置上插入一個(gè)子串以及刪除一個(gè)子串等。
兩個(gè)字符串相等的充要條件是:長(zhǎng)度相等,并且各個(gè)對(duì)應(yīng)位置上的字符都相等。設(shè)p、q是兩個(gè)串,求q在p中首次出現(xiàn)的位置的運(yùn)算叫做模式匹配。串的兩種最基本的存儲(chǔ)方式是順序存儲(chǔ)方式和鏈接存儲(chǔ)方式。
字符串或串(String)是由數(shù)字、字母、下劃線(xiàn)組成的一串字符。一般記為 s=“a1a2···an”(n=0)。它是編程語(yǔ)言中表示文本的數(shù)據(jù)類(lèi)型。在程序設(shè)計(jì)中,字符串(string)為符號(hào)或數(shù)值的一個(gè)連續(xù)序列,如符號(hào)串(一串字符)或二進(jìn)制數(shù)字串(一串二進(jìn)制數(shù)字)。
字符串?dāng)?shù)據(jù)類(lèi)型是建模在形式字符串的想法上的數(shù)據(jù)類(lèi)型。字符串是幾乎在所有編程語(yǔ)言中可以實(shí)現(xiàn)的非常重要和有用的數(shù)據(jù)類(lèi)型。
在某些語(yǔ)言中它們可作為基本類(lèi)型獲得,在另一些語(yǔ)言中做為復(fù)合類(lèi)型獲得。多數(shù)高級(jí)語(yǔ)言的語(yǔ)法允許通常用某種方式引用起來(lái)的字符串來(lái)表示字符串?dāng)?shù)據(jù)類(lèi)型的實(shí)例;這種元字符串叫做“文本”或“字符串文本”。
盡管形式字符串可以有任意(但有限)的長(zhǎng)度,實(shí)際語(yǔ)言的字符串的長(zhǎng)度經(jīng)常被限制到一個(gè)人工極大值。一般的說(shuō),有兩種類(lèi)型的字符串?dāng)?shù)據(jù)類(lèi)型: “定長(zhǎng)字符串”,它有固定的極大長(zhǎng)度并且不管是否達(dá)到了這個(gè)極大值都使用同樣數(shù)量的內(nèi)存,和“變長(zhǎng)字符串”,它的長(zhǎng)度不是專(zhuān)斷固定的并且依賴(lài)于實(shí)際的大小使用可變數(shù)量的內(nèi)存。
參考資料:百度百科——字符串