c 裡while x 和while x 的意思

時間 2021-09-05 20:01:52

1樓:

while是c++中的迴圈語句,一般格式為:

while (表示式)

語句;while首先檢查表示式的值是否為真(不等於0),如果是,則執行下面的語句;然後繼續檢查表示式的值,執行語句直到表示式的值為0.

所以while(x)的意思是:如果x不等於0,則執行下面的語句。

~為c++中的一個運算子,意思為:對它後面的值按位取反,所以要使~x等於0,就要使x的所有位(包括符號位)都為1.

所以while(~x)的意思是:如果x有任何一位不是1,則執行下面的語句。

2樓:熱心的爆肚網友

while(x),當x為真時,迴圈繼續;

while(~x),當x為假時,迴圈繼續;

~符號表示邏輯表示式x取反

3樓:超級

while(x):當x不等於0時,執行。

while(~x):當~x不等於0時,執行。

~x:x的二進位制取反(1變0,0變1)。

4樓:匿名使用者

~x表示x按位取反操作.

whlie括號中的是判斷迴圈判斷條件

5樓:

比如i=1;則~i=0;

按二進位制 i=101;

則~i=010;

c語言中while(!x)的!x是什麼意思

6樓:幻翼高達

c語言「while(!x)」中的「!x」的意思是:變數x強制轉化為布林型別變數再取非。

「!」是c語言中的非運算子,在變數前面使用它,會構建非運算表示式,表示式的返回結果是個布林值(也就是隻有true或false)。對變數使用時,如果變數不是布林資料型別,將會強制轉化為布林型別再使用,如整形變數123將被轉化為true,整形變數0將被轉化為false。

擴充套件資料:

c語言所有運算子列表:

1、算術運算子

用於各類數值運算,包括加(+)、減(-)、乘(*)、除(/)、求餘(或稱模運算,%)、自增(++)、自減(--)共七種。

2、關係運算子

用於比較運算,包括大於(>)、小於(<)、等於(==)、 大於等於(>=)。

、小於等於(<=)和不等於(!=)六種。

3、邏輯運算子

用於邏輯運算,包括與(&&)、或(||)、非(!)三種。

4、位操作運算子

參與運算的量,按二進位制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。

5、賦值運算子

用於賦值運算,分為簡單賦值(=)、複合算術賦值(+=,-=,*=,/=,%=)和複合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。

6、條件運算子

這是一個三目運算子,用於條件求值(?:)。

7、逗號運算子

用於把若干表示式組合成一個表示式(,)。

8、指標運算子

用於取內容(*)和取地址(&)二種運算。

9、求位元組數運算子

用於計算資料型別所佔的位元組數(sizeof)。

10、特殊運算子

有括號(),下標,成員(→,.)等幾種。

7樓:廣朝雨盛廣

這個迴圈休共執行兩次!

while(!(--x))的意思是:x遞減1,如果x為非0值,則程式執行循序體!

本程式從x=3;入口,進入迴圈休:迴圈體執行輸出x(x=3),然後x自減2(x=1)然後程式從迴圈出來執行x遞減1(x=0),..

8樓:斬天及

"!"是「非」的意思,當「!x"為真,也就是」x==0"時執行迴圈

9樓:求以寒騰紅

其實就是個死迴圈

先執行do

中的內容

x-=2後x

=1;然後while

條件判斷是先自減,x=0,

再對x=

0求非。就會再執行do

中的內容。就會進入死迴圈!

10樓:隱藝李人

while語句中存放的是bool值,為真時才執行它的內容,為假時便退出迴圈。本程式使用的是do

while語句,所以先輸出1,然後在while語句中讓1減1,便得到0.大家都知道,在c語言中,只有0為假,!0表示為真,所以是個死迴圈

11樓:匿名使用者

!x 表示 x == 0 執行

12樓:祭月魂v牙

對x作非運算,x為假,則!x為真;x為真,則!x為假。

13樓:居翱薛家美

y=x是賦值語句,表示將x的值賦值給y,那麼while(y=x)可以理解為當x=0,即y=x=0時跳出迴圈,如果x為其它非零數,則執行迴圈體。

請問c語言中while(!x)的(!x)是什麼意思啊?

14樓:匿名使用者

x==0

while(x) 和while(x!=0)一個意思while(!x)和 while(x==0)一個意思希望對你有所幫助,不懂可以追問哦~

15樓:

!是「邏輯非」操作符,所以!x就是給x取反。

在c裡,非0為「邏輯真」,用1表示,0是「邏輯假」;所以!x==0實質就是x!=0的意思。

所以,while(!x==0)等效於while(x!=0),即當x不等於0時繼續迴圈,一直迴圈到x變為0時結束。

16樓:薊飛虎唐愛

--x的意思是x=x-1;!是邏輯非運算,!(--x)是迴圈條件while(!(--x));

表示當x=x-1運算後,如果x=0那麼因為非運算,那麼x不等於0,迴圈繼續;

如果x=x-1運算後,如果x不等於0,則!(--x)=0,結束迴圈

17樓:匿名使用者

x是一個變數·~

(條件判斷時,非0值為真,0值為假)

當x為非0值(也就是說不是0的時候),!x為假 (因為x為真,所以!x為假)

相反,x為0的時候,!x為真

總的來說while中的x為0才執行while中的迴圈體

18樓:

把x取邏輯非,如果x是假或者整數0,條件就成立,執行迴圈,否則退出迴圈。

19樓:匿名使用者

while(!x)中是不是預設!x為真???

20樓:偉大滴機械師

當非x為1時執行迴圈,就是說x為0迴圈

21樓:苦澀無人愛

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

22樓:匿名使用者

while(t)

相當於while( t!=0 )

t值為0時,條件為假

t值不為0時,條件為真

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

c語言中while(x--)是什麼意思?

23樓:匿名使用者

首先了解下優先順序與結合性

1.--為自減運算子,第二優先順序,自右至左2.x--這個表示式

:先使用x的值,接著x=x-1;

整個表示式的值為x

看while(x--)

首先①判斷x--這個表示式的值是否為0(即x的值),如果為0,不執行迴圈體

但仍然執行x=x-1;

例如:int x=0; 則不執行迴圈體,x最終值為-1②如果x的初值不為0,判斷x--這個表示式的值是否為0,(不論是否為0)x=x-1,

如果x--表示式的值不為0,在執行迴圈體.(真繞...看例子)例如:int x=3;

while(x--)

printf("%d\n",x);

①3-->不為0-->x=x-1-->x=2執行迴圈體 while

②2-->不為0-->x=x-1-->x=1同上③1-->不為0-->x=x-1-->x=0同上④注意 此時x=0,將不再執行迴圈體,但x=x-1;-->x=-1

(建議你逐步除錯,很清晰)

24樓:苦澀無人愛

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

25樓:匿名使用者

while(t)

相當於while( t!=0 )

t值為0時,條件為假

t值不為0時,條件為真

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

26樓:怡紅舊友

一直執行while所包含的語句,就是無限迴圈。

一般用來執行程式的主體,程式執行後,一直迴圈等待中斷等事件的發生;

處理完事件後,繼續迴圈。

在c++中while(!i)是什麼意思?

27樓:匿名使用者

意思是 i 等於 0 時(包括0、0.0、false、null),進入迴圈體;否則不進入迴圈體。

28樓:綰

如果i為零,則!i為非零;如果i不為零,則!i為零。while表示式當()內為非零值時成立,也就是說while在i為零時迴圈。

while(!x)的解釋

29樓:

我選cvoid main()

//x=-1*-1 值為1

while(!x); //0為假 非0 為真 !1 就是0 為假 不成立 跳出迴圈}

30樓:匿名使用者

我認為應該是選項b。原因:迴圈先執行一次,執行完後x=1,這時候不滿足!x,迴圈繼續,執行第二次,執行完後發現x=1,這時候x=x,不滿足!x,迴圈退出!

c語言裡a 和 a有什麼不同

1,表示式的值不同,a的值是原a的值加1,a 是原a值例1int a 1,b b a printf d b 例2int a 1,b b a printf d b 2,a可以做左值,a 不可以 例1int a 1,b 5 a b printf d a 例2int a 1,b 5 a b 這裡是個編譯錯...

C 裡 姓名和性別想輸入英文

用c 編 能夠錄入學生資訊,包括 學號 姓名 性別 身高 成績等 並且按身高排序 輸出排序後的學生名 執行過了,符合要求,有問題聯絡我。include include using namespace std 按題目要求定義結構體。struct student void main cout 身高 co...

c 裡過載operator會不會後和建構函式在表示式上有衝突呢

黃邦勇帥哥哥 樓主真有材,ca是一個類,可以直接ca 10 這樣書寫嗎?樓主可能對操作符過載的意義沒有弄明白吧,操作符過載的目的是方便兩個物件之間進行操作,也就是說操作符過載操作的是類建立的物件,並不是針對類的。比如class a class b 你不可以過載操作符讓類a和類b相加,也就是說a b不...