a2c0在C語言中的真假

2021-03-05 14:46:58 字數 1728 閱讀 4982

1樓:匿名使用者

類似於 if ( (a+=2) && (c=0) ) ....這樣的表達方式是非常不妥的。因為無論a+=2還是c=0本身都是乙個賦值語句而不是表示式,而乙個賦值語句的返回值是沒有意義的。

因此難以判斷是真是假,在不同的機器上使用不同的編譯器編譯,可能結果不同。象這樣寫程式就弄不清楚你注重的到底是判斷條件,還是條件內部的變數賦值。這種程式將來很難維護,因為***太強。

最起碼來說,第一行中對c的初始值說明完全沒有起到作用,因為還沒等使用就被馬上重新賦值了。嚴格地說,該判斷條件(包括其***)應寫為

a+=2;

c=0;

if ((a!=0) && (c==0))....

2樓:匿名使用者

你的語句有誤,如果真要判斷應寫為

if((a==(a+2))&&(c==0))才對,等於號是要雙等於,這樣寫就是

假&&真,結果為假

你要實在這樣寫,那麼我們就按賦值來說

a+=2就是5這是真,c=0這是假

那就是真&&假為假

3樓:匿名使用者

建議你去我的空間中引用的第乙個位址看看!

那裡有這方面的介紹,可以讓你對c語言有很多新的感受的!!

就是wentao的個人部落格,不錯的餓!

4樓:匿名使用者

樓上有幾位回答的人估計都是學vb的,看清楚要求摟主已經說了是在c語言中判斷

錯誤1: "假&&真" "a+=2既a=a+2所以是假 , c=0是真 "

更正: a+= 2 這是true, c=0 這個是false;

在c語言中 = 是賦值,==才是比較.

錯誤2: " 乙個賦值語句的返回值是沒有意義的"

更正 :c語言中乙個賦值語句的返回值就是最左邊的值,所以賦值的返回就是a 和 c

所以 判斷後應該是 true&&false

5樓:

前幾位大蝦都怎麼了,是我看錯了還是你們都錯了....

"假&&真" ?? !!賦值語句啊,那是!

樓上的是正解(不過這是常識啊)....爆寒

6樓:匿名使用者

(a==(a+2))&&(c==0)才有意義啊,你寫的0直接付給c,一定是假了。

7樓:

對於前面是假的話,且不檢查後面的。對於前面是真的話,或不檢查後面的。

象問題裡的,如果變數(a或c)是0就是假,非0就是真。

8樓:黃山

假,因為(c=0)賦值式的值為0,而且整個式子是與運算,所以最終結果為0,即假!

9樓:風雪冰雹

a+=2既a=a+2所以是假

c=0是真

&&有乙個是假結果就是假

10樓:匿名使用者

首先,這樣用表示式作為判斷語句非常不好。一般不會這樣使用。

對於這個題目,它會把賦值語句的最終賦的值作為結果,所以這和a的初值有關係。在此題中,a的初值為3,再將其+2,得5,不為0,則是真,對於c直接賦值為0,此處的0則作為判斷物件,故為假。

如果將c的值改賦為1,則此判斷句為真,在此基礎上如果將a的初值改為-2,則又為假,明白我什麼意思了嗎?

11樓:

假,因為是且運算,&&運算子c=0,即任何不為1的數便為 假 ,所以無論左邊是什麼結果,此表示式結果均為假

在C語言中0與0的區別是,C語言中的0與 0 有什麼區別?

他們是常量中不同的資料型別呀 0是整型常量,佔記憶體兩個位元組 0 是字元常量,佔記憶體乙個位元組 只是 0 在電腦中用電腦語言所代表的數值和0是相同的 字串常量和字元常量是不同的量。它們之間主要有以下區別 1 字元常量回由單引號括起來,字元答串常量由雙引號括起來。2 字元常量只能是單個字元,字串常...

在c語言中ak什麼意思,在C語言中,ak0什麼意思

字串結尾中止字元 比如 定義乙個字串,char a 3 對字串賦值如下 a 0 a a 1 b a 2 c a 3 0 0 字元簡單說就是告訴一串字元的結尾符 0 這個表示字串結束符 a k 0 表示把結束符賦值給字元陣列a的第k 1個元素 c語言中x 0是什麼意思 判斷變數x的值是否為0 如果是 ...

c語言中0是什麼意思,c語言中x 0是什麼意思

判斷變數x的值是否為0 如果是 那麼這個式子的邏輯值為1 或者真 否則 其邏輯值為0 或者假 例如if x 0 如果x為0,那麼x 0就為1 或者真 就執行否則就跳過不執行 是邏輯bai運算子du,用於判斷是否等zhi於。例如 y x 0 中如果daox的值回為0,那答麼 x 0 的運算結果就是1,...