zoukankan      html  css  js  c++  java
  • 【C】进制转换器

    #include <stdio.h>
    int power(int,int);
    int scale_first(int,int);
    int scale_double(int,int);
    int scale_all(int,int,int);
    int main()
    {
    //给定一个 M 进制的数 x,实现对 x 向任意的一个非 M 进制的数的转换
    int num,pow,answer; //数字,幂数,答案
    int scale1,scale2; //被转数值进制和目的数值进制
    int num1; //被转数值和目的数值
    printf(" 进制转换器 ");
    printf("格式是:被转换数字 被转数字的进制 目的进制 ");
    printf("请输入以上格式(数字 进制 进制):");
    scanf("%d%d%d",&num1,&scale1,&scale2);
    answer = scale_all(num1,scale1,scale2);
    printf("%d",answer);

    }

    int power(int num,int pow)
    {
    int answer=1;
    if(pow==0)
    {
    return answer;
    }
    answer=num*power(num,pow-1);

    }
    int scale_first(int num,int sca) //sca是被转换数值的进制 ,num是被转换数值
    {
    int answer=1;
    int digit=0;
    int dec=0;
    while(num!=0)
    {
    dec += num%10 * power(sca,digit);
    digit++;
    num/=10;
    }
    return dec;

    }
    int scale_double(int num,int sca) //sca是目的数值的进制,num是被转换数值
    {
    int answer=0;
    int i=0;
    int consult=1;
    while(consult!=0)
    {
    answer += num%sca * power(10,i);
    consult = num/sca;
    num/=sca;
    i++;
    }
    return answer;
    }
    int scale_all(int num1,int sca1,int sca2) //num1是被转换数值,sca1是被转换进制,sca2是目的进制
    {
    int dec;
    int aim;
    dec = scale_first(num1,sca1);
    aim = scale_double(dec,sca2);
    return aim;
    }

    充满金属光泽的脑袋持有者,怎么会因为害怕而放弃挣扎。----------------------------------------------------------------------------------------------------------------------------------------------------------------------- 让暴风雨来的更猛烈些吧!猛烈到撕裂我的灵魂!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 看看吧,暴风雨...你输了!---------------------------------------------------------------------------------------------------------------------------------
  • 相关阅读:
    《O2O实战:他们是如何利用互联网的》.pdf
    建议收藏,mybatis插件原理详解
    《Tensorflow:实战Google深度学习框架》.pdf
    MyBatis插件原理及应用(上篇)
    《大数据算法》.pdf
    答了Mybatis这个问题后,面试官叫我回去等通知……
    《构建高性能WEB站点》.pdf
    SpringBoot 构建 Docker 镜像的最佳 3 种方式
    快速了解阿里微服务热门开源分布式事务框架——Seata
    超值干货 | 建议收藏:精美详尽的 HTTPS 原理图注意查收!
  • 原文地址:https://www.cnblogs.com/naraka/p/7885526.html
Copyright © 2011-2022 走看看