c語言問題求解釋其中whileb 的意思

時間 2021-10-14 21:23:07

1樓:匿名使用者

在c語言中,0表示假,非0表示真。

while(!b)表示b等於0時,判斷條件為真,執行迴圈體;否則為假,不執行。

非運算子(!)為單目運算子,具有右結合性。參與運算量為真時,結果為假;參與運算量為假時,結果為真。例如:!0為真;!9為假。

雖然c編譯在給出邏輯運算值時,以「1」代表「真」,「0 」代表「假」。但反過來在判斷一個量是「真」還是為「假」時,以「0」代表「假」,以非「0」的數值作為「真」。

所以當b=0; 則 !b 為真,while(!b)執行

當b!=0; 則 !b 為假,while(!b)不執行

現在分析下你的**:

第一次進入迴圈體後,走

case 1: b=0;但這行沒有break,故繼續執行直到遇到break或執行完整個switch後退出,你的**中執行到case 2: b=-1; break;這行

此時 b = -1;,跳出switch

繼續執行

a=a+b;

b=2*a;

此後a = 1 + -1 = 0;

b = 2 *0 =0;

繼續執行到while (!b);

因為b=0;所以!b不等於0,此時條件判斷為真,

程式第二次進入迴圈體

這時 a=0;b=0

執行default : b=1;跳出switch

繼續執行

a=a+b;

b=2*a;

之後a = 0 + 1 = 1;

b = 2 * 1=2;

繼續執行到while (!b);

因為b=2;所以!b等於0,此時條件判斷為假跳出while迴圈

所以**的輸出為: a=1, b=2

希望採納!

2樓:匿名使用者

c語言值為0為假,非0為真。

!是求反操作,舉例來說就是:!0為真,!5為假。

do--while 就是迴圈語句了

while (!b)也就是當b的值為0時繼續迴圈,當值非0時結束迴圈。

希望幫到你。

3樓:demon天v武

這是do while語句 當b不等於0的時候就會跳出迴圈

c語言中while(a

4樓:神丶雨祭丨

沒有判斷的話就是a有boolean值。也就是true or faulse 。

然後就是無限迴圈下面的**。直到遇到停止語句。

5樓:匿名使用者

while(a見於初學者,想判斷b是否在a c之間,可是這是錯誤的寫法

while(a

while(a

6樓:閭曉士之雙

這種問題是一個很無聊的問題,在實際程式設計中不可能會碰到,而且作為規範的程式,也不允許這樣的表示式出現。

while

(a

((a<

b)

7樓:苦澀無人愛

while()是迴圈語句,t是判斷條件,當t為真或非0的話,執行迴圈,否則退出迴圈,比如t=1,迴圈會持續執行,t=0則退出迴圈,或者 t 可以是其他判斷語句,滿足ture時執行迴圈,為false則退出迴圈

8樓:匿名使用者

while(t)

相當於while( t!=0 )

t值為0時,條件為假

t值不為0時,條件為真

while( t )是while( t!=0 )的簡便寫法。

c語言,while(!e)中的!e等價於? a,e==0 b,e!=1 c,e!=0 d,==1.再解釋下!是什麼意思

9樓:匿名使用者

假設一個例子 ,連結串列中一個計算連結串列長度的迴圈,e剛開始初始化為第一個元素的地址

while(!e)

當初始條件滿足時,後面的迴圈內容開始執行,每執行一次都修改e的值,當e不為null即零的時候永遠迴圈執行,所以可以判斷 (!e) 等價於 e!=0 。

10樓:倒黴熊

!是非的意思,就是如果e為真 則 !e為假,e為假 則!e為真。

那麼while迴圈條件是 !e 為真,才迴圈,也就是 !e == 1才迴圈

11樓:匿名使用者

等價於a,while迴圈條件預設是括號中不為0,也就是!e != 0 ,那就是e==0

C語言問題求解,c語言問題求解

用指標更靈活,很多時候效率更高 舉個例子,比如用做函式引數 如果定義int a 3 然後函式引數用 void func int a 3 那麼傳進去的就是三個值,並且是形參,無法帶回修改後的值如果用void func int a,int size 這樣傳進去的只有兩個值,一個地址,一個size,並且修...

求解釋一簡單c語言例子,求解釋一簡單C語言例子

公子風起 a 是先使用a的值,再自加1 b,是先自加1以後再使用b的值 a d,它是先使用a的值,a 6,並顯示了以後再自加,令a 7 b d,他是先讓b自加,此時b b 1 8,並顯示 這裡的a,b都要自加1,所以最後a 7,b 8 但在螢幕上a顯示的是先前的值,b顯示的是自加後的值,但在程式執行...

c語言問題求解答,c語言問題求解

應該是 x y 2吧。最後選b 當i除以3餘1 除以5餘2 跳出迴圈 否則i自加 i初始化為5 所以 7 格式整理好就能看清楚了 include main int i 5 do if i 一葉二沙三世界 額,樓主題目估計都發錯了!同意修改 c語言問題求解 include int main retur...