Divein_day03_进制转换 十进制到其他进制的转换

来源:互联网 发布:淘宝店铺如何做爆款 编辑:程序博客网 时间:2024/05/01 08:13

//

//  main.c

//  binaryTo0x

//

//  Created by apple on 15/3/11.

//  Copyright (c) 2015 diveinedu. All rights reserved.

//


#include <stdio.h>

#include "string.h"

#include "Header.h"


int main(int argc,const char * argv[]) {

    // insert code here...

    

   int n, b;

    printf("please enter a number \n");

    printf("请输入想要转换的进制\n");

   scanf("%d %d",&n,&b);


   printf("%d...%d\n",n,b);

    

    jinzhizhuanhuan(n, b);


//    oct2binary(n);

 //   octTo0x(n);

    

//    printf("Hello, World!\n");

   return 0;

}


void oct2binary(int num){

    

   int result[32];      // 定义一个固定容器用于存储二进制位

    

   int i = 0;

   while (num > 0 ) {

        

        result[i++] = num %2;    // 2求二进制位然后储存在result

//        num = num / 2;             // 用于继续计算 二进制位

        num = num >>1;

        //      i++

    }

    

   for (int j = i -1; j>=0; j--) {

        

       printf("%x",result[j]);

    

    }

   printf("\n");

    

}



void octTo0x(int num){

    

   int i = 0;

   int result[32];

   while (num > 0) {

        

        result[i++] = num %16;

        num = num /16;

    }

    

   for (int j = i -1; j>=0; j--) {

        

       printf("%x",result[j]);

    

    }

   printf("\n");

}


void jinzhizhuanhuan(int num,int a){

    

   int i = 0;

   int result[32];

   while (num > 0) {

        

        result[i++] = num % a;

        num = num / a;

    

    }

    

   for (int j = i -1; j>=0; j--) {

        

       printf("%0x",result[j]);

        

    }

   printf("\n");

}



0 0
原创粉丝点击