程序是求兩個(gè)數(shù),這兩個(gè)數(shù)分別是15和13的倍數(shù),這兩個(gè)數(shù)加起來是512if那一行是讓第二個(gè)數(shù)能被13整除,但是那個(gè)!為啥代表能整除?
2 回答
已采納

不偏不易
TA貢獻(xiàn)96條經(jīng)驗(yàn) 獲得超118個(gè)贊
這句話的意思是,,(512-i*15)%13,表示,獲取512-i*15后被13除的余數(shù),比如i=0時(shí),余數(shù)為5。前面加個(gè)!,即!5,值為0,所以不會是break,而是繼續(xù)循環(huán)。
當(dāng)某一時(shí)刻,余數(shù)為0時(shí),!0=1,所以break,輸出相應(yīng)的數(shù)據(jù)。

晚安sp
TA貢獻(xiàn)405條經(jīng)驗(yàn) 獲得超154個(gè)贊
感嘆號!是C中的邏輯非運(yùn)算符。
C語言是沒有boolean數(shù)據(jù)類型的,所以也就沒有true,false這樣的值,除非你去宏定義一個(gè)。
C中的邏輯運(yùn)算值是用整型0/1來代替的。0為假,1為真。非0值也為1。
例如,!a 是一個(gè)邏輯非表達(dá)式,當(dāng)a值為0時(shí),!a的值是1,否則是0。
- 2 回答
- 0 關(guān)注
- 2198 瀏覽
添加回答
舉報(bào)
0/150
提交
取消