青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C/C++圖形圖像的世界

圖形與游戲編程

常用鏈接

統(tǒng)計

積分與排名

Blog

最新評論

傻瓜學(xué)習(xí)C語言進制轉(zhuǎn)換

最近受網(wǎng)友的邀請,就寫一篇入門的教學(xué)文章。不過對于已經(jīng)有一定實力水平的人來說,入門級的東西反而對于他(她)們來說不容易解釋清楚,我也想挑戰(zhàn)一下自己,看看我能把一些基礎(chǔ)問題怎么解釋能讓智商80的人也能看明白(雖然這樣說有點夸張),所以文章的標(biāo)題就叫做“傻瓜學(xué)習(xí)C語言進制轉(zhuǎn)換”,不過也不是沒有要求的,要求是,看本文的時候,請你一定要按順序看,并且要確定你會寫這樣一個c程序:輸入一個int,分解出它的個位,十位,百位(提示:要用’%'求模運算和’/'整除運算)。。。。。。

1.數(shù)值與進制
數(shù)值與進制是兩個不同的東西。數(shù)值是什么?100,200這種并不是數(shù)值。
什么是數(shù)值?古代的時候,人們記數(shù),有一個物品就記一塊石頭,或者有11個物品,就打11個繩結(jié),這就是數(shù)值,如果你要表示1000,那你還真的需要打1000個繩結(jié)來表示。可問題就是,這樣子你會累死,為了不用累死,于是他們發(fā)明了另一種表達方式:準(zhǔn)備兩種不同的石頭A和B,有一個,那就用一塊A石頭表示,兩個就用兩塊A表示,如果太多了,比如10個,就用一塊B石頭來表示有10個A石頭,比如AAAAABB表示25個。但是,如果表達的數(shù)值更大,那就再多準(zhǔn)備一種石頭C,每10個B石頭就用一個C石頭來表示,比如AABCC表示212。于是,這樣就可以大大減少所需要的石頭的數(shù)目,而這,就是進制。
進制是數(shù)值的一種表示方式

2.數(shù)值與進制的轉(zhuǎn)化
進制是為了表示一個數(shù)值,如果是每10個進一,那么就是我們熟悉的10進制,否則,如果是每k個進一,那就是k進制,比如我們的時間,是每60秒記1分鐘,這就是60進制。然后,怎么把一個用特定進制的表示,得到它的數(shù)值呢?很簡單,比如上文說的AABCC,首先,有兩個A,分解得AA + BCC,就是2 + BBC,然后,1個B就是10個A,于是就是AA + AAAAAAAAAA + AAAAAAAAAA + C,然后一個C等于10個B,就是AA + AAAAAAAAAA + AAAAAAAAAA + BBBBBBBBBB,這樣一直拆下去,直到全部是A為止,你就得到實際的數(shù)值了,實際的數(shù)值就是A的個數(shù),記住這一點,數(shù)值和進制是兩碼事。

然后,反過來,怎么把一個數(shù)值轉(zhuǎn)化為特定進制呢?很簡單,按照進制的定義,比如現(xiàn)在有數(shù)值A(chǔ)AAAAAAAAAAAAAAAAAAAAAA,然后,要轉(zhuǎn)成10進制,那么我們每10個分一分組:AAAAAAAAAA + AAAAAAAAAA + AAA,然后,把10個A用B來表示,得到:B + B + AAA,如果B有10個,那再把它換成C表示。那么,如果你明白了以上方法,你就得到一個最基本的進制轉(zhuǎn)換手段,就是先化為數(shù)值,再重新用另一個進制表示。比如10進制的13,要化成二進制,那么,就是BAAA -> AAAAAAAAAAA -> AA AA AA AA AA AA A 這時,換一個符號,每兩個A用一個M表示,那么就是MM MM MM A,再每兩個M用一個N表示,得到NN N A,再每兩個N用一個P表示,得到P N A。而在這里,一個P等于8個A,一個N等于4個A,所以P + N + A你可以驗算出8 + 4 + 1,等于原來的數(shù)值。而這種表示方法,就和羅馬數(shù)字很相似,羅馬數(shù)字里,用I表示1,用V表示5,用X表示10,于是18就用XVIII表達,用一個字母多次重復(fù)來表達一個數(shù)值。

后來,為了能更方便書寫,因為字母數(shù)量是有限的,無法表達更大的數(shù)字,書寫方式改用阿拉伯?dāng)?shù)字寫在不同的位置來表達,于是就是我們今天的10進制數(shù)字。比如剛剛的例子,BAAA,有一個B,于是在十位寫1,然后有三個B,在個位寫3,也就是B的個數(shù),組合起來就是13,這是十進制的情況。如果是二進制,剛剛我們得到的結(jié)果是PNA,注意這里沒有M,相當(dāng)于0個,而如果我們用二進制寫,那就有四個位,個位有一個A,記1,第二位相當(dāng)于M的個數(shù),是0,組合起來是01,第三位是N,記1,組合是101,第四位有一個P,再組合就是1101,于是這就是10進制的13,化為二進制的結(jié)果。

3.進制的特點
問你,3638除以10的余數(shù)是多少?給你一秒種思考時間,多少?如果這個你不能馬上說出來,那你就要反省了。結(jié)果應(yīng)該是8,直接看個位不就對了。那么3638除以10的商呢?再給你一秒。。。。。。。。。。。。。。。。。。。這個答錯的話要重讀小學(xué)了,答案當(dāng)然是363.8,如果把這個數(shù)取整,不要小數(shù)部分,那就是363。小學(xué)的時候你就應(yīng)該知道,對一個數(shù)乘以10或者除以10這種計算是超簡單的,因為我們用的是10進制。類似的,問一下你,經(jīng)過60個5秒是多少分鐘多少秒?再給你一秒思考時間,要毫不猶豫的回答我。你可別去計算60*5=300,這是多余的。答案是5分鐘,時間我們用的60進制,那么乘以60只要改一下單位就足夠了,肯定是對的。再問你,10分鐘分成60份是多少秒?你必須立即回答我是10秒。
我們推廣到任意k進制,按這個特點,k進制下,乘以k或者除以k的運算是超級簡單的,比如8進制的123,乘以8肯定是1230,除以8就是12.3,相當(dāng)于在移動小數(shù)點而已。于是,k進制下乘除k就是移動小數(shù)點。而除以k求余數(shù)的話,像剛剛的8進制的123除以8,就等于12余3,就是要得到個位上的數(shù)字,同時得到原來的數(shù)舍棄掉個位的結(jié)果。這個性質(zhì)非常的重要!除法的本質(zhì)是什么?其實除以k是得到被除數(shù)在k進制下的個位數(shù)(余數(shù)),和小數(shù)點左移的結(jié)果(商)。

4. C下實現(xiàn)數(shù)值轉(zhuǎn)化為進制
好,現(xiàn)在回到程序,給你一個int n,要把它的各位上的數(shù)字取出來,按上面的性質(zhì),那就很簡單了,先得到個位,n%10(這個’%'是求余運算),然后小數(shù)點左移,n = n / 10; 然后不斷循環(huán)這個過程,如下代碼:

int n = 2456;
while (n > 0)
{
    printf("%d,", n % 10);
    n = n / 10;
}

輸出結(jié)果是”6,5,4,2,”,好好領(lǐng)悟一下這段代碼。給你五分鐘時間。每一次%10就是取出個位,每一次/10就是丟掉個位。
而如果把輸出的結(jié)果里的數(shù)字,逆過來看,就是”2456″。

在這里,那個int所表示的,就是一個數(shù)值,剛剛我們的代碼所做的事就是把這個數(shù)值,一位一位的分解出來。
而事實上,這個過程就是把數(shù)值轉(zhuǎn)化為特定進制的過程。剛剛就是把數(shù)值轉(zhuǎn)化為10進制。
如果把剛剛的代碼改為:

int n = 13;
while (n > 0)
{
    printf("%d,", n % 2);
    n = n / 2;
}

沒錯,輸出結(jié)果是”1,0,1,1″,就是剛剛把13化為二進制的例子,每一次%2就是取出二進制下的個位,每一次/2就是丟掉二進制下的個位。
只要把那個次序反過來,就得到1101,就是13化為二進制的結(jié)果。在你真正搞明白了除法的本質(zhì)后,那么,數(shù)值轉(zhuǎn)化為以k進制表示那是一件很簡單的事。

5. 進制轉(zhuǎn)化為數(shù)值
這部分我不打算講,很多人對這個比起前面的內(nèi)容來說容易理解很多,直接用進制的定義就已經(jīng)很好辦了,沒什么太難理解的東西。

6. 作業(yè)
編寫一個程序,輸入三個整數(shù)n A B,表示把A進制的n,轉(zhuǎn)換為B進制,并輸出。
樣例:
輸入 輸出
11 8 10 9
129 10 2 10000001
22 3 6 12

假定輸入的A和B都在2-10這個范圍,超出范圍的不用去處理,輸入的n保證在int范圍內(nèi)。

posted on 2011-12-27 01:41 御坂美琴 閱讀(1467) 評論(1)  編輯 收藏 引用

評論

# re: 傻瓜學(xué)習(xí)C語言進制轉(zhuǎn)換 2011-12-27 02:21 OwnWaterloo

炮姐好……  回復(fù)  更多評論   


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美精品久久一区| 最新国产精品拍自在线播放| 亚洲综合欧美| 亚洲国内高清视频| 亚洲国产高潮在线观看| 国产综合色精品一区二区三区 | 激情综合网激情| 国产一区二区按摩在线观看| 欧美日本亚洲| 欧美午夜精品伦理| 久久久亚洲精品一区二区三区| 亚洲第一成人在线| 这里只有精品电影| 亚洲一区二区三区精品动漫| 久久久www成人免费无遮挡大片| 亚洲手机成人高清视频| 欧美在线一二三| 欧美成人一二三| 亚洲一区二区久久| 亚洲欧美日韩精品在线| 欧美日韩三级电影在线| 国内精品伊人久久久久av一坑| 亚洲国产精品一区二区www| 一区二区三区福利| 久久综合网hezyo| 亚洲一区三区视频在线观看| 免费中文字幕日韩欧美| 国产精品无码永久免费888| 亚洲国产精品精华液2区45| 性欧美暴力猛交69hd| 亚洲美女色禁图| 免播放器亚洲| 激情五月婷婷综合| 欧美一区二区在线免费播放| 亚洲午夜伦理| 国产精品一区毛片| 久久精品国产综合| 久久蜜臀精品av| 在线日韩欧美视频| 美女脱光内衣内裤视频久久影院| 久久久欧美一区二区| 国精产品99永久一区一区| 久久精品一本久久99精品| 久久成人精品| 久久夜色精品国产亚洲aⅴ| 国内精品久久久久影院色 | 欧美日韩免费网站| 一区二区高清视频| 一个色综合av| 精品动漫av| 欧美寡妇偷汉性猛交| 欧美四级在线| 久久er精品视频| 免费在线欧美黄色| 亚洲欧美在线观看| 久久在线免费| 国产日韩欧美精品| 欧美欧美天天天天操| 一本色道久久综合狠狠躁篇的优点 | 久久先锋影音| 久久精品中文| 激情久久久久久久| 亚洲高清123| 欧美精品一区二| 亚洲免费成人av| 亚洲欧美在线一区| 亚洲国产视频直播| 亚洲免费在线观看视频| 久久久久国产精品厨房| 久久久久久久999| 久久久久久久综合色一本| 国产伦精品一区二区三区照片91| 99re热这里只有精品免费视频| 在线观看欧美一区| 久久国产主播精品| 裸体素人女欧美日韩| 久久香蕉国产线看观看av| 国产精品美女久久| 亚洲精品综合精品自拍| 夜夜嗨av一区二区三区免费区| 欧美电影打屁股sp| 亚洲视频网站在线观看| 亚洲欧美久久久久一区二区三区| 欧美激情综合| 久久久久久黄| 国内精品久久久久影院色| 欧美一区1区三区3区公司| 国产精品自拍网站| 欧美午夜一区| 国产欧美精品一区| 欧美先锋影音| 欧美精品久久一区二区| 欧美在线免费播放| 亚洲精品久久久久中文字幕欢迎你| 日韩亚洲欧美成人一区| 国产乱码精品一区二区三区忘忧草 | 夜夜夜久久久| 亚洲国产精品激情在线观看| 欧美日韩一级黄| 欧美片在线观看| 久久精品日产第一区二区| 欧美国产日韩精品免费观看| 久久国产精品色婷婷| 一区二区三区精品| 亚洲高清视频中文字幕| 国产色产综合产在线视频| 欧美啪啪成人vr| 欧美华人在线视频| 久久久久88色偷偷免费| 亚洲一区欧美| ●精品国产综合乱码久久久久| 国产精品亚洲综合| 欧美视频一区二区三区| 欧美性色aⅴ视频一区日韩精品| 欧美大片va欧美在线播放| 麻豆精品在线播放| 久久亚洲欧美| 久久综合狠狠| 欧美人交a欧美精品| 国产精品久久久久久久午夜| 国产精品色午夜在线观看| 狠狠色丁香婷婷综合久久片| 99riav1国产精品视频| 亚洲在线视频一区| 久久久中精品2020中文| 亚洲国产成人高清精品| 亚洲高清色综合| 亚洲欧洲一级| 久久国产欧美精品| 亚洲自拍偷拍福利| 亚洲欧美日韩一区二区三区在线 | 国产精品伊人日日| 一区在线观看视频| 亚洲自拍偷拍网址| 欧美黄色成人网| 亚洲主播在线| 欧美精品在线一区二区| 韩日精品中文字幕| 亚洲免费视频中文字幕| 亚洲成人在线免费| 亚洲一区国产精品| 欧美高清在线精品一区| 亚洲欧美日韩精品在线| 欧美精品九九| 午夜一区二区三区在线观看| 久久深夜福利| av不卡在线| 欧美视频在线观看免费| 亚洲大胆av| 免费不卡在线观看| 欧美一级片在线播放| 国内精品美女在线观看| 亚洲免费一在线| 亚洲无线视频| 国产精品网站在线播放| 亚洲一区日本| 欧美亚洲综合久久| 国产一区再线| 欧美成人久久| 麻豆精品传媒视频| 亚洲人成网站777色婷婷| 亚洲二区在线视频| 欧美经典一区二区三区| 亚洲视频在线看| 性欧美xxxx视频在线观看| 国产永久精品大片wwwapp| 亚洲大胆人体视频| 欧美日韩一区二区视频在线观看 | 国产一区二区三区丝袜| 欧美激情第3页| 国产精品久久久99| 欧美激情一区二区三区成人| 国产精品激情偷乱一区二区∴| 久久久人成影片一区二区三区观看| 久久精品99久久香蕉国产色戒| 亚洲人成高清| 久久精品夜色噜噜亚洲a∨ | 久久爱www| 一本色道久久88亚洲综合88| 欧美在线电影| 国产精品久久看| 亚洲第一福利在线观看| 好看的日韩av电影| 午夜激情综合网| 亚洲欧美国产精品桃花| 欧美国产日韩一区二区在线观看| 国产精品区一区二区三区| 欧美成人午夜激情在线| 国产日韩欧美综合| 亚洲制服av| 久久电影一区| 国产乱子伦一区二区三区国色天香 | 久久精品日产第一区二区三区| 欧美激情精品久久久久久变态| 欧美aⅴ一区二区三区视频| 亚洲福利视频二区| 久热爱精品视频线路一| 欧美好吊妞视频| 亚洲日本免费| 国产精品美女午夜av|