課程
/后端開發(fā)
/C
/C語言入門
為什么當(dāng)成績是9000000000時(shí)是結(jié)果是普通玩家????int 有限制數(shù)字大小嗎?
還有就是當(dāng)輸入99999999999.。。。。是偶數(shù)個(gè)9時(shí)就是鉆石玩家,奇數(shù)個(gè)9時(shí)就是普通玩家
2015-10-15
源自:C語言入門 4-3
正在回答
內(nèi)存中存放的數(shù)都是補(bǔ)碼。查查補(bǔ)碼的定義吧。
這里拿32位來看
在32位的系統(tǒng),int類型最大值正數(shù)為2147483647 換算為 補(bǔ)碼就是 0111,1111,1111,1111
這時(shí)如果再加1? 那二進(jìn)制就是? 1000,0000,0000,0000,第一位是符號(hào)位 1代表負(fù)數(shù),也就是加1后溢出的結(jié)果 -2147483648。
如果不斷的再加1 總會(huì)變成正數(shù),然后就能滿足那幾個(gè)邏輯判斷的任意一個(gè)條件了。你在最后面加9 實(shí)際上就是每次在前面增加了 9*10n2?? 9乘以10 的N次方,碰巧就符合你說的鉆石、普通玩家了。
C/C++在64位機(jī)中int的最大值就是2^63-1,最小值是-2^63
ainanshen 提問者
舉報(bào)
C語言入門視頻教程,帶你進(jìn)入編程世界的必修課-C語言
2 回答好崩潰 ,求大神解答
1 回答求大神解答
1 回答求大神解答。。。。
2 回答求大神解答
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2015-10-19
內(nèi)存中存放的數(shù)都是補(bǔ)碼。查查補(bǔ)碼的定義吧。
這里拿32位來看
在32位的系統(tǒng),int類型最大值正數(shù)為2147483647 換算為 補(bǔ)碼就是 0111,1111,1111,1111
這時(shí)如果再加1? 那二進(jìn)制就是? 1000,0000,0000,0000,第一位是符號(hào)位 1代表負(fù)數(shù),也就是加1后溢出的結(jié)果 -2147483648。
如果不斷的再加1 總會(huì)變成正數(shù),然后就能滿足那幾個(gè)邏輯判斷的任意一個(gè)條件了。你在最后面加9 實(shí)際上就是每次在前面增加了 9*10n2?? 9乘以10 的N次方,碰巧就符合你說的鉆石、普通玩家了。
2015-10-15
C/C++在64位機(jī)中int的最大值就是2^63-1,最小值是-2^63