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不...