為什麼輸出是 C,在賦值 if 中的值後,不執行 if 下的語句?

發布 科技 2024-02-09
22個回答
  1. 匿名使用者2024-02-05

    public class test1{

    public static void main(string args)

    boolean b = true;

    if(b=false) b=false 是給 b 賦值,而這一行 ** 是先賦值做出判斷,此時 b 是 false,它不進入分支。

    a");else if(b)

    b");else if(!b) //b = false !b 為 true,進入分支,輸出 c

    c");else "d");

  2. 匿名使用者2024-02-04

    1.如果(b=false)等價於if((b=false))等價於if(true ==(b=false)),因為b已經賦值給了false,所以這個條件是無效的,所以判定下來。

    2.因為此時b已經是假的,否則如果(b)無效,繼續判斷。

    3、else if (!b) 保持,所以輸出 c。

    如果替換為 if (b==false),則:

    1.因為此時b為真,如果(true==false)無效,繼續判斷。

    2. 否則,如果 (b) 為真,則輸出 b。

    這裡的主要區別在於,乙個等號是賦值語句,兩個等號是確定它是否相等的語句。

    如果怕筆誤,可以這樣寫if(false ==b),這時,如果不小心漏掉了乙個等號,那麼語法錯誤可以一目了然。

  3. 匿名使用者2024-02-03

    如果 和 else 只會執行其中乙個,而不是兩個。

  4. 匿名使用者2024-02-02

    這個**怎麼感覺有問題,你的意思是說,如果A等於C,輸出C,不要等待輸出B?

  5. 匿名使用者2024-02-01

    複製表示式 x=5 本身有乙個值,該值等於左值。 換句話說,公式 x=5 的值是 x,這意味著它是 5。 公式 x=5 的答案值為 5 不為零,為 true,將執行 k=2。

    一般來說,if後面的語句禁止使用單等號,即賦值數,以防止錯誤。

    如果為 x=0,則該表示式的值為 0,為 false,並且不會執行以下語句。 不管你用什麼軟體編譯,它是dev還是vs08。

  6. 匿名使用者2024-01-31

    賦值語句始終是 true copy,因此應執行它。

    優秀的程式設計師需要養成良好的習慣,Du最好判斷語句寫成zhiif(5==x),即使錯誤的dao輸入缺少乙個“=”,即if(5=x),這樣編譯就會報錯,如果寫成if(x==5),錯誤的輸入是if(x=5), 程式會繼續,很難檢查大程式的錯誤。

  7. 匿名使用者2024-01-30

    我個人覺得這裡的“=”是賦值符號,等號後面的值賦值給x,這樣if一定是真的,然後因為if的條件為真,輸出k的值是正常的,個人意見。

  8. 匿名使用者2024-01-29

    對於 if 語句,因為 bai

    你知道裡面的du

    判斷語句是乙個表示式,所以當你想給語句中的變數賦值時,你應該知道賦值的規則! 分配與相等時不同! 正如你問的:

    如果(x=5)這是錯誤的,編譯器不會同意這樣的表示式,所以認為是假的,不要執行k=2,同下同!

  9. 匿名使用者2024-01-28

    賦值操作返回乙個左值。

    x=5 返回 5 true

    x=0 返回 0 false

  10. 匿名使用者2024-01-27

    要麼零為真,例如。

    if(a=5)

    else d=3;

    此語句沒有語法錯誤(可能有警告),並且是可執行的。

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

    a=5賦值表示式的結果是5,當這個表示式出現在if語句的邏輯表示式的位置時,它的計算結果被當作乙個邏輯值來對待,在C語言中,整數用來表示邏輯量,非零代表“true”,所以這是乙個永久的真公式; 此 if 的邏輯條件從不為 false。

    換句話說,這裡表達的邏輯條件不是“a的內容是否等於5”,而是將資料5輸入到變數a中。

  11. 匿名使用者2024-01-26

    不一定,具體取決於分配給變數的值是否為 0

    請嘗試以下程式:

    #include

    void main()

    程式輸出 i=1,表示執行第二個 if 語句。

  12. 匿名使用者2024-01-25

    就是編譯一下,看看有沒有語法錯誤!

    如果是賦值語句,則 if 語句為 true。

    如果值為 0,則可以自己嘗試。

  13. 匿名使用者2024-01-24

    不可以,只會發生語法編譯錯誤,並且只能用於確定它是否相等。

  14. 匿名使用者2024-01-23

    您當前的條件語句寫成 2 個語句:

    條件語句 a:if (xconditional statement b:if (x==y &&y==z) else 執行條件語句 a,滿足條件 執行輸出語句 1;

    然後執行條件語句b,條件不滿足,執行輸出語句3;

    如果出現以下情況,我們將它更改為 else 語句:

    if (xelse if (x==y &&y==z) else ;

    這樣,x

  15. 匿名使用者2024-01-22

    不要猶豫,答案是:d

    聽我告訴你if(表示式、文字、常量、變數等); 只要這些最終值之一不是 0,就意味著與 if 關聯的語句不會被執行,如果它無論如何都不是 0,它就會被執行。

    根據上述內容:問題 '''associates'' printf('***');那麼 if() 括號顯然是乙個賦值表示式,這意味著 if 將使用 x 的最終值作為是否執行 if 相關語句的基礎。

    很明顯,x=y+z; 最終 x = 0;

    因此,else 語句部分被執行

  16. 匿名使用者2024-01-21

    表達了高階商品的濫用堅韌。

  17. 匿名使用者2024-01-20

    ######;因為 y 和 z 都是 0; 所以賦值語句的返回值是 0;

  18. 匿名使用者2024-01-19

    首先,確保你輸入的數字可以正確地分配給變數 x,根據你在 scanf 中的寫法,它應該是 x520。

  19. 匿名使用者2024-01-18

    因為你的判斷條件是 and,所以你必須有乙個同時滿足 5,8,13 可除性 = 0 的數字,然後它才會出現在 if 語句中。

  20. 匿名使用者2024-01-17

    有沒有乙個數字可以同時被 5 8 13 整除? 將 && 替換為 ||看。

  21. 匿名使用者2024-01-16

    我沒有問題,賦值表示式之間最好用分號,雖然我試過了答案也沒關係,也不知道你的,是怎麼開始的,就用你**,我這上很正常。

  22. 匿名使用者2024-01-15

    它在我的機器上執行沒有任何問題。

相關回答
20個回答2024-02-09

大招之後有乙個輸出。 最主要的是創造機會,團戰貢獻,區域傷害,無視護甲以增加輸出。

15個回答2024-02-09

我們還看不到八十! 它比我們大得多,批評我們是善意的。

9個回答2024-02-09

軟盤錯誤。 CMOS 校驗和錯誤 - 正在載入預設設定。 >>>More

11個回答2024-02-09

首先,可能是顯示卡鎖不相容導致的藍屏,建議您在安全模式下解除安裝顯示卡驅動程式,並將驅動程式安裝在計算機顯示卡的空閒驅動器磁碟上。 >>>More

15個回答2024-02-09

因為女孩小時候出了車禍,導致聲帶受損,又因為正處於變聲期,嗓音就變成了這樣! 這不是你與生俱來的東西! 而且,它不是遺傳的,而且她的家人沒有嬰兒的聲音! 我也有嬰兒的聲音! >>>More