整数十进制转换为二进制和十六进制
来源:互联网 发布:网络公司员工培训 编辑:程序博客网 时间:2024/04/30 01:19
#include <stdio.h>#include <stdlib.h>char* DecToBin(int num){ char* buffer = (char*)malloc(33*sizeof(char)); char* temp = buffer; int n = 0; for (int i = 0; i < 32; i++) { n = num & (1 << (31 - i)); n = n >> (31 - i); temp[i] = (n == 0) ? '0' : '1'; } buffer[32] = '\0'; return buffer;}char* DecToHex( int num){ char buffer[9]=""; char* result = (char*)malloc(11); //十六进制开头 result[0] = '0'; result[1] = 'x'; char* temp = result + 2; int i = 0; int j = 0; while ( i < 8 && num) { if (num % 16 > 9) buffer[i++]= num % 16 - 10 + 'A'; else buffer[i++]= num % 16 + '0'; num = num / 16; } //翻转 for (j = 0; j < i; j++) temp[j] = buffer[i - j - 1]; temp[j] = '\0'; return result;}int main(){ char *p1 = nullptr; char *p2 = nullptr; int num = 0; printf("输入十进制数: "); scanf_s("%d", &num); p1 = DecToBin(num); p2 = DecToHex(num); printf("二进制: %s\n", p1); printf("十六进制: %s\n", p2); free(p1); free(p2); p1 = nullptr; p2 = nullptr; system("pause"); return 0;}
测试:
0 0
- 整数十进制转换为二进制和十六进制
- 将十进制转换为二进制和十六进制
- 将十进制转换为二进制和十六进制
- 二进制、十进制和十六进制转换
- java中十进制转换为二进制、八进制和十六进制
- 十进制转换为二进制数、八进制数和十六进制
- java 十进制转换为二进制、八进制和十六进制原理
- 将十进制数转换为二进制数和十六进制数
- 十六进制转换为十进制,二进制转换为十进制
- 十进制负数转换为二进制、八进制、十六进制
- 十进制转换为二进制、八进制、十六进制。
- 十进制转换为二进制、八进制、十六进制
- 算法:十进制转换为十六进制,二进制,八进制
- 十进制转换为二进制、八进制、十六进制程序
- 十进制负数转换为二进制、八进制、十六进制
- 十进制负数转换为二进制、八进制、十六进制
- Java十进制转换为二进制、八进制、十六进制
- 十进制整数转换为二进制整数
- HDU4653 Strongly connected
- myeclipse连接oracle步骤
- GOF之适配器模式
- 如何设置铃声和壁纸实例
- linux mint 18虚拟机下设置1080P分辨率
- 整数十进制转换为二进制和十六进制
- [AngularJS面面观] 21. 依赖注入 --- constant到底如何而来
- Q351:从字符串1中删除字符串2中出现的字符
- android使状态栏沉浸效果
- 【卷积神经网络】tiny-dnn网络参数
- OC语法基础:NSURLConnection总结
- JDBC连接sql server数据库
- android输入法问题
- JAVA学习代码——输入身份证判断生日