C語言程式設計strcmp函式的問題

時間 2021-09-11 22:33:35

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...