1樓:匿名使用者
strcmp()函式原型是
int strcmp(const char *s1,const char *s2)
如果s1的字串在機器編碼順序中落後於s2,函式返回值是乙個大於0的整數;如果兩個字串相同的話,返回值是0;如果第乙個字串在機器編碼順序中先於第二個字串,返回值是乙個<0的數。
看函式的返回值型別是 int,那麼你就可以定義乙個int 值來表示,例如
int cmp=strcmp(s1,s2)cmp>0說明s2>s1;
cmp=0說明s2=s1;
cmp<0說明s2或者可以直接使用
if(strcmp(str1,str2))作為判斷條件。
2樓:趙丹
如果a>b,strcmp(a,b)返回的是》0;
如果a==b,strcmp(a,b)返回的是0;
如果a
你可以方便記憶成strcmp(a,b)的結果就是a-b。a比較大的話結果自然就是》0
3樓:匿名使用者
#include
#include
int main()
4樓:匿名使用者
if(strcmp(str1,str2)==0)printf("str1==str2");
c語言問題:不用strcmp函式比較兩個字串的大小
5樓:問明
#include
#define n 80
void cmp(char a[n],char b[n])int i=0;
char *p1=a,*p2=b;
while(*(p1+i)==*(p2+i)&&*(p1+i)!='\0')
i++;
if(*(p1+i)>*(p2+i))
printf("%s>%s\n",p1,p2);
else if(*(p1+i)<*(p2+i))printf("%s<%s\n",p1,p2);
else
printf("%s=%s\n",p1,p2);
int main()
char a[n]=,b[n]=;
char c[n]=,d[n]=;
char e[n]=,f[n]=;
cmp(a,b);
cmp(c,d);
cmp(e,f);
return 0;
執行效果:
6樓:匿名使用者
#include
int main()}
c語言兩個字串比較大小的問題,不使用strcmp函式
7樓:問明
#include
#define n 80
void cmp(char a[n],char b[n])int i=0;
char *p1=a,*p2=b;
while(*(p1+i)==*(p2+i)&&*(p1+i)!='\0')
i++;
if(*(p1+i)>*(p2+i))
printf("%s>%s\n",p1,p2);
else if(*(p1+i)<*(p2+i))printf("%s<%s\n",p1,p2);
else
printf("%s=%s\n",p1,p2);
int main()
char a[n]=,b[n]=;
char c[n]=,d[n]=;
char e[n]=,f[n]=;
cmp(a,b);
cmp(c,d);
cmp(e,f);
return 0;
執行效果:
8樓:
看了也試了、沒什麼問題
不過不用加標頭檔案string.h
while((str1[i]==str2[i])&&(str1[i]!='\0')) i++;
這是說兩個字串從首位字元開始比較、如果相比較的兩個字元相等且第乙個字串沒有到結尾、那麼要比較的字元各向後移動一位、str1[i]!='\0'是判斷字串結束的、當不滿足條件時就會繼續向下執行
s=0;
else
s=str1[i]-str2[i];
如果是由於第乙個字串結束而跳出上面的迴圈、判斷第二個字串是否也結束了、
也就是判斷下是不是兩個字串同時結束、如果是、s=0、不是、s為兩個字元相差的ascii碼
c語言字串比較函式strcmp是什麼意思
我是一個麻瓜啊 1 strcmp是比較兩個字串的大小,兩個字串相同時返回0,第一個字串大於第二個字串時返回一個正值,否則返回負值.2 比較兩個字串的演算法是 逐個比較兩個串中對應的字元,字元大小按照ascii碼值確定,從左向右比較,如果遇到不同字元,所遇第一對不同字元的大小關係就確定了兩個字串的大小...
C語言程式設計,c語言的程式設計
諮詢記錄 於2021 04 30 和安裝編譯器。c語言需要通過編譯器解釋為計算機可以理解的機器碼。編譯器通常是免費的,不同的作業系統上一般使用不同的編譯器。2.理解基本概念。c語言是一門古老的語言,但卻十分強大。它最初是為unix作業系統設計的,但後來被移植到了幾乎所有的作業系統上。3.檢視一些基本...
程式設計c語言,程式設計C語言
答案應該是 you me 其實該程式執行有點問題,改成下面編譯才能通過 include include int main char arr 2 4 strcpy arr 0 you strcpy arr 1 me arr 0 3 printf s n arr 0 return 0 說明 首先執行st...