C语言,十进制数转化为二进制数
方法一
#include<stdio.h>
int main(void)
{
int i=0,n,a[32];
printf("请输入一个十进制整数.\n");
scanf("%d",&n);
while (n>0)
{
a[i]=n%2;
i=i+1;
n=n/2;
}
printf("十进制整数转换为二进制数是:\n");
for(i--;i>=0;i--)
printf("%d",a[i]);
printf("\n");
return 0;
}
方法二
#include "stdio.h"
int main()
{
int a,r,i=0,j=1,count[100]; //输入的是a
printf("请输入一个十进制整数:\n");
scanf("%d",&a);
do //循环,直到a等于0跳出
{
r=a%2; //求每一次的余数,实际上最后输出的也是这个
a=a/2;
i++;
count[i]=r;
}
while(a!=0);
printf("十进制整数转换为二进制数是:\n");
for(j=i;j>0;j--) //这里是倒序输出
printf("%d",count[j]);
}
c语言如何使二进制转十进制
按照如下步骤即可用C语言把二进制数转换成十进制数的程序:
1、首先在主函数中设置成函数Sum,另外定义了一个数组array[8],用于存放输入的八位二进制数。
2、然后使用了一个for循环语句,用于输入八位二进制数。在scanf函数里,在%d之间加一个1,然后使用printf函数输出,并且调用Sum函数,数组名作为实参。
3、在Sum函数中,声明了一个power函数,在这里n为指数,term为每一位数转换为十进制后的的数,如1*(2*2),sum为总和。
4、然后使用一个for循环语句,i用于控制循环的次数,n从最高的指数7开始每次循环减一,如果指数大于或等于零的,就进行循环,调用power函数时,将n作为实参,最后将和返回。
5、在power函数中,如果b等于零,即指数为零,则返回1,否则就进入一个循环,j用于控制循环次数
6、最后看一下运行结果,这个C语言程序既可以把二进制数成功转换成十进制数了。
c语言2进制转十进制代码
C语言中可以使用atoi()函数将二进制字符串转换为十进制整数。首先需要将二进制字符串传入该函数,然后将其转换为十进制整数。例如,如果要将二进制字符串"1010"转换为十进制整数,可以使用以下代码:
char binary[] = "1010";
int decimal = atoi(binary);
这将把二进制字符串"1010"转换为十进制整数10,并将其存储在变量decimal中。需要注意的是,该函数只能将字符串转换为整数,如果字符串中包含非数字字符,则会返回0。因此,在使用该函数时需要确保字符串中只包含0和1。