#includelt;stdio.hgt;
在南票等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需開發(fā)網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)營銷推廣,成都外貿(mào)網(wǎng)站制作,南票網(wǎng)站建設(shè)費(fèi)用合理。
#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)長
{
return 1;
}
else if((*a!='\0')(*b=='\0'))//字符串a(chǎn)比字符串b長
{
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í)際上就是加工的過程,而return語句代表返回值,就是加工廠在實(shí)現(xiàn)加工之后給“投資人”的成品。
二、return語句的特點(diǎn)
1、在函數(shù)當(dāng)中,遇到return語句之后就意味著函數(shù)運(yùn)行的結(jié)束,在此之后的代碼是不運(yùn)行的。
2、它不支持任何運(yùn)算也沒有任何內(nèi)建方法,和任何其他的數(shù)據(jù)類型比較是否相等時(shí)永遠(yuǎn)返回false,也可以將None賦值給任何變量。
3、執(zhí)行到return語句時(shí),會退出函數(shù),return之后的語句不再執(zhí)行。但將return語句放在try語句塊中,是個(gè)例外。
三、return的默認(rèn)值:return函數(shù)默認(rèn)的返回值為undefined。
在C語言中比較字符串大小,可以使用庫函數(shù)strcmp,也可以自己編寫比較函數(shù)。
1、使用庫函數(shù)。
需要包含頭文件string.h。聲明為:
int strcmp(const char *s1, const char *s2);
會根據(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.
}
從左到右,依次比較字母的ASCII碼的大小,遇到不同字符或'\0'結(jié)束。
基本形式:strcmp(str1,str2)
str1=str2時(shí),返回零;str1str2時(shí),返回負(fù)數(shù);str1str2時(shí),返回正數(shù)。
比如Apple和Banana比較,先比較第一個(gè)字母A和B,A的ASCII碼是65,B的是66,所以AppleBanana。
compare和computer比較,前4個(gè)字母相同,第五個(gè)字母a和u,a的ASCII碼是97,u的是117,所以comparecomputer。
擴(kuò)展資料:
特別注意:
strcmp(const char *s1,const char * s2)這里面只能比較字符串,即可用于比較兩個(gè)字符串常量,或比較數(shù)組和字符串常量,不能比較數(shù)字等其他形式的參數(shù)。
ANSI標(biāo)準(zhǔn)規(guī)定,返回值為正數(shù),負(fù)數(shù),0 。而確切數(shù)值是依賴不同的C實(shí)現(xiàn)的。
1、當(dāng)兩個(gè)字符串不相等時(shí),C標(biāo)準(zhǔn)沒有規(guī)定返回值會是1 或 -1,只規(guī)定了正數(shù)和負(fù)數(shù)。
2、有些會把兩個(gè)字符的ASCII碼之差作為比較結(jié)果由函數(shù)值返回。但無論如何不能以此條依據(jù)作為程序中的流程邏輯。
c語言程序設(shè)計(jì)比較兩個(gè)數(shù)的大小的方法:
1
輸入兩個(gè)數(shù)值。
2
比較大小。
3
輸出結(jié)果。
以整型為例,代碼如下:
#include
int
main()
{
int
a,b;
scanf("%d%d",a,b);
if(ab)
printf("%d%d\n",a,b);
else
if(a
==
b)
printf("%d=%d\n",a,b);
else
printf("%d%d\n",a,b);
}
代碼如下:
#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é)果: