亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

問下這題 輸出結果是 3 我 怎么算出來是 3 2 1?

問下這題 輸出結果是 3 我 怎么算出來是 3 2 1?

弒天下 2022-12-22 17:13:41
C語言 while(!x);是什么意思?main(){int x=3;do {printf("%d",x--);}while(!x);}是不是 while(!x)和 do while(!x)的 意思是不一樣的 ?求教!
查看完整描述

3 回答

?
慕工程0101907

TA貢獻1887條經驗 獲得超5個贊

while()是循環語句。
while(expr)表示當邏輯表達式expr為真時,循環運行循環體,直到expr值為假或遇到break語句時退出。

!x是邏輯非操作,當x為0時,值為真,否則值為假。 在這里等效于x==0。
在while(!x)后面有一個分號,表示該循環的循環體為空,即只做判斷和循環,并不執行操作。
于是這句的意思就是,如果x為0,則一直循環下去,不做操作,否則繼續執行。
如果沒有其它線程來改變x的值,那么這里就是一個死循環了。

查看完整回答
反對 回復 2022-12-25
?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

while(!x)后面有一個分號,表示該循環的循環體為空,即只做判斷和循環,并不執行操作。

!是反運算符,單目,!真 即 假,!假 即 真。
如果x != 0, 則 !x 為 0,即假,如果x == 0,則 !x 為 真。

while()是循環語句。
while(expr)表示當邏輯表達式expr為真時,循環運行循環體,直到expr值為假或遇到break語句時退出。

!x是邏輯非操作,當x為0時,值為真,否則值為假。 在這里等效于x==0。

 


查看完整回答
反對 回復 2022-12-25
?
當年話下

TA貢獻1890條經驗 獲得超9個贊

!是反運算符,單目,!真 即 假,!假 即 真。
如果x != 0, 則 !x 為 0,即假,如果x == 0,則 !x 為 真。
while循環和 do-while 循環的區別在于,while是先檢查是否復合條件再循環,而do-while循環則是在循環體尾檢查是否符合條件,這就說明,do-while循環內的語句至少被執行一次。
這好比下面的例子
do{
吃一個三明治 ←←←←← Statement;
我餓嗎?(餓,再吃一個三明治↑)(不餓,退出循環↓) }while();
←←←←←←←←←
這就意味著,你至少得吃一個三明治。
如果使用while循環,則像下面這樣

我餓嗎?(餓,吃↓)(不餓↓) while() {
吃一個三明治 ← ↓ statement;}  


這說明,你不一定吃一個三明治。
這就是while跟do-while的區別。。。=、=

查看完整回答
反對 回復 2022-12-25
  • 3 回答
  • 0 關注
  • 116 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號