黑马程序员技术交流社区

标题: 647转化为16进制是287还是47 [打印本页]

作者: hoohoo    时间: 2015-9-3 18:05
标题: 647转化为16进制是287还是47
如果把647转化为二进制为1010000111,在转化为16进制为287,如果直接用647转化为16进制,647除以16得47,怎么不一样呢?
作者: bustle    时间: 2015-9-3 20:21
647除以16是算16进制的方法???
作者: wtj900    时间: 2015-9-3 20:35
下面的程序可以算出10进制到2~16进制的转换,可以算一下。
#include <stdio.h>

int main()
{
    int i,num,R;                              
    char bitnum[100];
    printf("请输入一个十进制整数:");
    scanf("%d",&num);
    printf("请输入要转换的进制数(2-16之间):");
    scanf("%d",&R);
   
    if(R<2||R>16){                             //判断进制数范围
        printf("输入数据错误");
    }else
        //计算需要转换的进制数
        for (i=0;num!=0;i++){
            if (num % R >= 10) {
                bitnum[i]= 'A' + (num % R - 10);
            } else {
                bitnum[i]=num % R + '0';
            }
            num = num / R;
        }

    while(i--){                                //逆向输出
        printf("%c",bitnum[i]);
    }
    return 0;
}
作者: 1wang2huan    时间: 2015-9-3 20:45
647除以16什么都不是!
作者: bustle    时间: 2015-9-3 21:17
wtj900 发表于 2015-9-3 20:35
下面的程序可以算出10进制到2~16进制的转换,可以算一下。
#include

犀利,顶
作者: GodLovenan    时间: 2015-9-3 21:45
刚刚学还是把他先转化成二进制,再转化成16进制的把
作者: 郭占岭    时间: 2015-9-3 23:47
算法错啦,你看进制的转换了嘛
作者: 同舟ing    时间: 2015-9-4 01:21
研究这么深奥的问题我也是吓尿了!加油吧。
作者: chensc    时间: 2015-9-4 08:38
学习学习!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2