Divein_day03_进制转换 十进制到其他进制的转换
2015-03-11 21:37
288 查看
//
// 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");
}
// 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");
}
相关文章推荐
- 完全正确的十进制转换其他任何进制,朋友帮我改的
- [置顶] Java 十进制与其他进制之间的转换问题
- P122 第三章 20题 十进制转换其他进制
- 十进制与其他进制之间的转换
- 使用“栈”完成十进制到其他进制的转换
- 用数组实现十进制与其他进制的转换
- 制表法将十进制转换为其他进制
- 十进制转换成其他进制和其他进制数转换成十进制数
- Java转换十进制为其他进制的两种方法
- 十进制的数转换成其他进制的数
- 【进制转换】十进制转其他进制 _CDTemplate
- 数据结构的应用——使用栈实现十进制到其他(2、8、16)进制的转换
- 用栈(链式)实现十进制到其他进制的转换:
- 十进制和其他进制的转换规则
- C语言:其他进制数转换为十进制(方法一)
- 不设变量交换数据、十进制转换为其他进制
- 数据结构的应用——使用栈实现十进制到其他(2、8、16)进制的转换
- Java中十进制转换为其他进制的方法
- C语言:其他进制转换为十进制(方法二)
- java 使用查表法将十进制转换成十六进制其他进制