c语言编程:把一个十进制的数转换成二进制的数

来源:百度知道 编辑:UC知道 时间:2024/05/18 08:45:53
#include <stdio.h>
#include <math.h>

int trans2(int x) //转换为二进制的函数
{
int m=x,n,b=0,i=0;
while(m>0)
{
n=m%2;
m/=2;
b+=n*pow(10,i);
i++;
}
return b;
}
这是我写的,但是构建.exe的时候出现一个错误,请问高手错在哪里

没有仔细看你的逻辑是否正确,如果你只是想把程序调试通过的 话
把b+=n*pow(10,i); 改成b+=n*(int)pow(10,i); 就可以了;
貌似pow()返回的是一个double类型的,所以你赋值的时候有一个警告;
再加上main()函数就可以编译通过了.

这时代 怎么还学C语言啊??
不过学好C语言 打好基础 很重要`呵呵`

这是因为缺少了主函数,加上以下一个主函数就可以了。
void main()
{ int a,b;
printf("请输入一个十进制数:");
scanf("%d",&a);
b=trans2(a);
printf("%d",b);
}

int trans2(int x) //转换为二进制的函数
{
int m=x,n,b=0,i=0;
while(m>1) //只有m=1或者0时候才结束
{
n=m%2;
b+=n*pow(10,i);
++i;
m/=2;
}
b+=m*pow(10,i+1);//加上尾数
return b;
}

没有main函数是编译不出可执行文件的

c语言编程:把一个十进制的数转换成二进制的数 用C语言编程,输入任意十进制数输出其相应的二进制数 C 语言编程 二进制转十进制 C语言,怎么用递归函数,把输入的一个十进制整数转换成二进制数输出 C语言,编一程序用递归函数,把输入的一个十进制整数转换成二进制数输出 C语言:编写一函数,输入一个十六进制数,输出一个对应的十进制数。 C语言编程:任取x为十进制整数,编程将x转换成对应的八进制数后输出。 C语言编程:由键盘输入一个小于256的十进制整数,然后将该数转换成八位的二进制形式输出。 c语言编程:输入一个只包含0和1的二进制数,打印出相应的十进制、八进制和十六进制形式。 c语言编程 一个三位数的水仙花数 的程序