实现十进制转二进制的函数
void _BIN(int x){
int i = 0;
int z;
int _bin[10];
do{
_bin[i++] = x % 2 + 48;
x = x / 2;
} while (x);
printf("BIN: B");
for (z = i - 1; z >= 0; z--){
printf("%c", _bin[z]);
}printf("\n");
}
十进制转八进制
void _OCD(int x){
int i = 0;
int z;
int _ocd[10];
do{
_ocd[i++] = x % 8 + 48;
x = x / 8;
} while (x);
printf("OCD: 0");
for (z = i - 1; z >= 0; z--){
printf("%c", _ocd[z]);
}printf("\n");
}
十进制转十六进制
void _HEX(int x){
int i = 0;
int z;
int _hex[10];
do{
if ((x % 16)<10 && (x % 16) >= 0)
_hex[i++] = x % 16 + 48;
if((x % 16)<16 && (x % 16) >= 10)
_hex[i++] = x % 16 + 55;
x = x/16;
} while (x);
printf("HEX: 0x");
for (z=i-1; z>=0;z--){
printf("%c", _hex[z]);
}printf("\n");
}
主函数
int main(){
_HEX(255);
_OCD(255);
_BIN(255);
return 0;
}
执行效果如下所示