1樓:
有好多問題a 只是指標 沒有指向正確的空間。
應該定義成 char a[20];
另外 scanf("%s",&a);對於指回針a不應該再用&a作為引數答,對於陣列a 這麼寫,木有執行錯誤。正確的應該是scanf("%s",a);
你比較始終不對是因為輸入的內容木有正確的寫入到a。
2樓:雁凌飛飛
a和b必須要以『\0』結尾,兄弟
請問c++中 if(!strcmp(a,b)) 中的!strcmp代表什麼意思
3樓:匿名使用者
當s1,返回值<0
當s1=s2時,返回值=0
當s1>s2時,返回值》0
所以,當a和b相等時strcmp(a,b)返回0,那麼!strcmp(a,b)就是1了,
也就是說,當a和b相等的時候執行if下面的語句,如果a和b不等,不執行if下面的語句
4樓:
! -- 邏輯非運算子。
strcmp(a,b) -- 字串比較函式。當 a字串和 b字串 一樣時,函式返回 0。
邏輯運算中,0為假,非0 為真。
!假 得真。!真 得假。
if(!strcmp(a,b))else;
當 a字串和 b字串 一樣時 ,函式返回 0,也就是 假,!假 得真,
所以 當 a字串和 b字串 一樣時, 執行 ,不一樣時 執行else;
5樓:匿名使用者
strcmp是乙個函式,表示字串比較(字典序),該函式返回<0 如果字串a在b之前
=0 如果a和b相等
>0 如果a在b之後
if(!strcmp(a,b))等價於if(strcmp(a,b)==0),即若a,b兩字串相等。
希望這個答案對你有用
6樓:匿名使用者
字串函式- strcmp
原型:extern int strcmp(char *s1,char * s2);
用法:#include
功能:比較字串s1和s2。
說明:當s1值
<0當s1=s2時,返回值=0
當s1>s2時,返回值》0
舉例:// strcmp.c
#include
#include
main()
c語言中,if(strcmp(,「 」)==0)是什麼意思??
7樓:
strcmp(a, b)這是乙個字串比較函式,
如果a的字串內容與b的字串內容相同的話,strcmp == 0
8樓:天雨下凡
strcmp(stu[i].***,"男"),就是比較stu[i].***的內容是否是"男",如果是,就返回0
c語言中 !strcmp(a,b)是什麼意思?注意有個感嘆號!
9樓:匿名使用者
簡單的說就是:
strcmp是個比較函式,用法就是a>b返回1,a非,即把0變成1,非0變成0;
假設a=5,b=4
那麼a>b,返回結果為1,取非之後為0,既為假.就不會執行下面的break語句。
假設a=4,b=5
結果為a
只有當a和b相等時,才會執行break語句,既跳出語句。
比如a=5,b=5時。
a == b,strcmp的返回值穩定為0,取非之後為1,if判斷為真,就開始執行break語句
10樓:匿名使用者
比較 a b 字串,若 a b 字串相等,則 !運算後返回 1 ;
若 a < b 或 a>b ,則返回 0;
11樓:匿名使用者
a串和b串相等(本來相等是0為假,!以後就成真了)
c語言........誰知道if(strcmp(a,b)>0) 是什麼意思!謝謝了!
12樓:匿名使用者
比較兩個字串:
字串a是否大於字串b
那麼怎麼比較呢,我來舉幾個例子,我不講記憶體的方法,你會不理解,我就舉幾個形象的例子。
1. a = 「abcd\0」 b = 「abce\0」 那麼 a < b, 因為其中'd' < 'e'
2. a = 「abcd\0」 b = 「abc\0」 那麼 a > b. 因為其中 'd' > '\0',也就是a字串長度比較長。
3. a = 「abcd\0」 b = 「abcd\0」那麼 a = b.因為比較到'\0'為止他們都是相等的。
if(strcmp(nm,p[i].num)==0)是什麼意思
13樓:流星
nm是個字串指標或者字元陣列
p 是個結構體陣列,這個結構體裡有個成員叫num,型別為字串指標或字元陣列。
整句作用就是 判斷 字串nm和字串p[i].num是否相等
14樓:匿名使用者
strcmp(比較字串)
相關函式 bcmp,memcmp,strcasecmp,strncasecmp,strcoll
表頭檔案 #include
定義函式 int strcmp(const char *s1,const char *s2);
函式說明 strcmp()用來比較引數s1和s2字串。
回字串大小的比較是以答ascii 碼表上的順序來決定,此順序亦為字元的值。strcmp()首先將s1第乙個字元值減去s2第乙個字元值,若差值為0則再繼續比較下個字元,若差值不為0則將差值返回。例如字串"ac"和"ba"比較則會返回字元"a"(65)和'b'(98)的差值(-33)。
返回值 若引數s1和s2字串相同則返回0。s1若大於s2則返回大於0的值。s1若小於s2則返回小於0 的值。
15樓:匿名使用者
請問你這裡的nm和p[i].num表示的是什麼?
strcmp 的作用是比較字串s1和s2。
說明:當s1s2時,返回值》0
0為什麼不等於0而是等於1呢,0!為什麼要定義為等於1?
0!1 是規定好的,是為了有關的算式能夠更好計算。望採納 這個是數學家規定的 0的階乘為1 1的階乘為1 後面的按照階乘的計算方法進行計算。人為規定的初始值,其實也可以規定為0,但那樣後續的階乘就不好算了,可以看看下面的摘抄 1 1,1!1 0 所以0 1 0!為什麼要定義為等於1?1的階乘是1,這...
0的階乘為什麼等於,0的階乘為什麼等於
從階乘的定義出發。從階乘表示式n!n n 1 中,知道乙個數的階乘是遞推定義的。比如要計算乙個任意的整數m的階乘,我們就把m作為初值,計算m m m 1 同樣的,當m l時,m!1 1 0 1,取等式中最後乙個等號的兩邊,即1 0 1,這個等式兩邊同時約去1,就得到如下結果 0 1。階乘的計算方法是...
為什麼0乘以任何數都等於,為什麼0乘以任何數都等於0?
零乘以任何數等於零,基數是0倍數是5,意思是說0在反 了5倍的情況下,因為0代表什麼都沒有,什麼都沒有的情況下反了5倍,代表什麼都沒有.任何數乘以零等於零,基數是5倍數是0,意思是說5在反了0倍的情況下,因為5是個實體,就是說,5這個數量是存在的實數,也就是說5在反了0倍的情況下還是5.所以說零乘以...