c語言dowhile問題
int a=-1; do{a=a*a;} while(!a); printf("%d",a);為什么只執(zhí)行一次
首先,,選擇do while語句肯定會先執(zhí)行一次
先執(zhí)行do 然后在判斷while語句的真假
你這段先執(zhí)行 a = a*a 也就是1,然后while語句判斷
你要先知道非0即真,,a = 1,,條件為真,while(!a)這句的意思是非真也就是假,,while語句判斷假條件的時候退出
!a表示當(dāng)a為0時循環(huán)才執(zhí)行
你是do。while
第一次肯定會執(zhí)行的
a=a*a的結(jié)果為1
它的,!a就是0,,循環(huán)條件為0,不成立,,循環(huán)結(jié)束
相關(guān)推薦
便查問答是一款實用的網(wǎng)絡(luò)熱門知識問答平臺,,專注于分享你不知道的知識,、經(jīng)驗及生活問題,在這里所有人都能找到答案歡迎網(wǎng)友參與討論,。