//
// 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; // 除 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");
}