很多人都知道,C语言中printf打印数的格式化表示方法有十进制、八进制、十六进制,但没有二进制。所以需要通过编程实现。那十进制怎么转换成二进制?
方法就是用“除2取余数,余数再逆向排序法”。
举个例子:【例】把十进制数13转换成二进制【步骤】
- 13除以2,商为6,余数1
- 6除以2,商为3,余数0
- 3除以2,商为1,余数1
- 1除以2,商为0,余数1
教程代码如下:
# include <stdio.h> # include <math.h> /* * 函数功能:十进制转二进制 * @ num:要被还换成二进制的十进制数 * 返回值:二进制数 * */ int transfer_10_to_2(int num) { int a=num, b, c, n=0; for (int i = 1; a !=0; i++) { b = a / 2; //商 c = a % 2; //余 n = c * (int)pow(10, i-1) + n; //余数 a = b; //新的被除数,供下一步使用 } return n; } int main() { int number; while (1) { printf("请输入一个十进制数:\n"); scanf("%d", &number); int num = transfer_10_to_2(number); printf("%d的二进制输出为:%d\n\n", number, num); } return 0; }
运行结果
以上就是“C语言怎么输入十进制输出二进制?”的详细内容,想要了解更多C语言相关知识或者教程欢迎持续关注编程学习网
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/8956/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取