問個問題c語言的關於if語句中條件判斷是賦

2021-03-10 15:53:38 字數 2516 閱讀 2954

1樓:匿名使用者

複製表示式x=5本身是有值的,這個值等於左值。也就是說x=5這個式子的值是x,也就回是5。而x=5這個式子的答值是5不為零,就是真的,還會執行k=2。

一般來說,if後面語句是禁止使用單等於號,也就是賦值號的,就是為了防止出錯。

980515024 這位回答的有錯誤。if(x=5)編譯是不會報錯的。

如果是x=0,這個表示式的值就是0,也就是假的,就不執行後面的語句了。用什麼軟體編譯無所謂,6.0還是dev還是vs08都行。

2樓:匿名使用者

賦值語句永遠是真抄,所以要執行

優秀襲的程式設計師就需bai要養成好的習慣,du最好判斷語句寫成zhiif(5==x),即使誤dao輸入少了一個「=」,即if(5=x),這樣編譯時會報錯,若寫成if(x==5),誤輸入為if(x=5),程式將繼續,大程式查錯就困難

3樓:匿名使用者

個人感覺這裡的「=」是賦值符號,將等於號後面的值賦給了x這樣if必然成立,隨後由於if的條件成立這樣很正常的就會輸出k的值了,個人觀點

4樓:匿名使用者

對於if語句既然bai

你知道里面du

的判斷語句是表示式,那zhi麼當你要dao在該語句中為變數回賦值時就答應該知道賦值的規則啊!賦值和相等時不一樣的!如你所問:

if(x=5)這是錯誤的,編譯器是不會認同這樣的表示式,因此認為是假,不執行k=2,下面的一樣!

5樓:匿名使用者

賦值運算返回左值

x=5 返回5 true

x=0 返回0 false

c語言,if(表示式)中,表示式如果是一個賦值語句,這個if就會恆真嗎?

6樓:育知同創教育

非零即真,例如

if(a=5)

else d=3;

這個語句沒有語法錯誤(可能會有警告),是可以執行的。

但是這個語句永遠沒有機會執行else部分。

a=5賦值表示式的計算結果就是5,當這個表示式出現在if語句邏輯表示式位置上的時候,它的計算結果是被當作邏輯值處理的,在c語言中用整型數表示邏輯量,非零表示「真」,所以這是一個永真式;這個if的邏輯條件永遠不會為假。

也就是說,這裡所表達的邏輯條件並不是「a的內容是否等於5」,而是向變數a中送入資料5。

7樓:匿名使用者

不一定,要看給變數賦的值是否為0

*****************************************

嘗試以下程式:

#include

void main()

這個程式會輸出 i=1,也就是說執行了第二個if語句的執行部分。

8樓:『點點滴滴

是去編譯下看有沒語法錯誤!

如果是賦值語句if語句為真。

賦值為0的你可以自己試下

9樓:匿名使用者

不會,只會發生語法編譯錯誤,if裡只可以用==判斷是否相等

c語言問題:一個if語句後面如何跟兩個賦值語句?

10樓:匿名使用者

if (x1)

用大括號把想要一起執行的語句框起來就行了,加油

11樓:自由公認的石匠

加上大括號就行了

12樓:肆哉

你不知道有個{}這東西?

c語言中if語句,如果上面賦值a=0,if(a=0)括號中條件是真還是假

13樓:匿名使用者

你問題中的if(a=0)這個if判斷的表示式是賦值操作,正常執行下一直是為真的

14樓:匿名使用者

c語言使用0代表假,非0代表真

if(a=0);

就相當於

a=0;

if(a);

就相當於

if(0);

括號中的條件是假

15樓:匿名使用者

1、if語句的表示式的值為非零值時,執行if後的語句塊

2、賦值表示式的值是賦值以後的左值的值

16樓:匿名使用者

假 a=0 是賦值表示式,賦值表示式的值取決於賦值號左側變數a的值,a=0 即表示式的值為0

若a=1 則賦值表示式的值為1

17樓:無恨

100%真。以後記住只要if內是賦值語句,那麼if條件表示式為真。

18樓:冽冽不是逗比

永遠都是假的 就等同於 if(0)

我想你想寫的是不是f(a == 0)這樣的判斷

19樓:serenity魚

false;

if(a=0)裡面是賦值運算,因為賦值為0 ,所以為false,如果賦值為2,則是true

c語言凶問個問題,c語言小白問個問題

main函式return 0 前新增語句system pause c語言小白問個問題 不是你覺得,而是看實際的環境,如給什麼變數,因為編譯器還會自動 轉換 小白求問c語言問題 for迴圈裡只有一句,那大括號就可以去掉 也就是說它用的第二個 表示是for迴圈裡面執行的東西,因為你for迴圈只執行了一句...

c語言switch語句中的default放在前面是不是先執行

並不是這樣的。抄 switch語句的格式為 襲 switch expr 習慣上把default寫在最下面,bai但實際上就像du寫在中間的case的順序與zhi結果無關dao一樣,default的位置一樣也和結果無關。當執行switch語句時,無論default位於哪個位置,都會先檢查每個case是...

c語言switchcase語句中呼叫函式求改錯十萬火急

include void main c語言中,如何在switch case後面呼叫函式,一共5個case,都要用函式的呼叫 include void test1 void test2 void test3 void test4 void test5 int main return 0 c語言中,怎樣...