标题:请问如何将二进制数转换为其他进制?比如八进制?
只看楼主
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
这个进制转换能直接把int型转换成其他进制的int型,不过进制大于10的就没有另外用字母保留了,而且还没有实现小数部分的转换,有点简陋

/*m进制转换n进制*/

#include<stdio.h>
#include<math.h>
int fun(int a,int m,int n)
{
    int b=0,c=0;
    do
    {
        b=a%n*(int)pow(m,c++)+b;
    }while (a/=n);
    return (b);
}
int main()
{
    int a,m,n;
    int b=0,c=0;
    printf("输入原数,原进制,转换进制\n");
    scanf("%d%d%d",&a,&m,&n);

    printf("%d\n",fun(a,m,n));

    return 0;
}

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-12-09 20:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-469095-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.535949 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved