在我们日常学习生活中,接触到的都是十进制,那在C语言中如何使用十进制转换成二进制呢?
首先,需要了解这两者的区别。我们平常使用的数字是从0~9组成,例如1、9、199、599等等,一个数字最多表示的数值也只能是九,如果需要表示十、一百等,就需要多个数字表示。例如最简单的小学数学中5+6的结果,一个数字不够,就只能“进位”,这时进一位“相当于十,”进两位“相当于二十。
因为逢十进一,也因为只有 0~9 共十个数字,所以叫做十进。所以在进行加法(减法)运算时,逢X进(借)一就是X进制
在数学中十进制和二进制的转换
十进制与二进制的对应关系
二进制和十进制的转换:
-
十进制 4321 = 4×10^3 + 3×10^2 + 2×10^1 + 1×1^0
-
二进制 1101 = 1×2^3 + 1×2^2 + 0×2^1 + 1×2^0 = 8 + 4 + 0 + 1 = 13
-
二进制 110.11 = 1×2^2 + 1×2^1 + 0×2^0 + 1×2-1 + 1×2-2 = 4 + 2 + 0 + 0.5 + 0.25 = 6.75
#include<stdio.h> int bintodeci(char *s);//函数声明 void main() { char s[30]; printf("请输入二进制形式的数\n"); gets(s); printf("转换成十进制形式是:%d\n",bintodeci(s)); } int bintodeci(char *s) { int res=0,sign=1,i; char *p; i=1; if(*s=='-')//如果输入的是负数,则数据符号是- {sign=-1;s++;} p=s; while(*p!='\0')p++;//p一直指向字符串最后的反斜杠0,只为了从右往左运算 while(p!=s) { p--; res=res+i*(*p-'0'); i*=2;//位权等比递增,1,2,4,8,16 } return res*sign;//最后结果加上符号即可 }以上就是“c语言编程如何进行二进制转换(十进制转换为二进制c语言编程)”的详细内容,想要了解更多C语言相关内容欢迎持续关注编程学习网
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/9020/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取