题目描述: 将一个十进制的数字转化为二进制的数字
测试用例:
输入:10
输出:1010
输入:9
输出:1001
思路:可以发现二进制位是满2进1,则可以通过/2来判断是否需要进位,依次作为循环终止条件;通过%2可以判断二进制的每一位对应的数字。若要转化为数字,则可以用到pow()函数,由于是从下往上读的,因此可以利用变量i递增使得下面数字位数更大。
double x-->表示底数
double y-->表示指数
代码表示:
//将十进制数字转化为二进制
#include<stdio.h>
#include<math.h>
int main()
{
int i = 0;
int n = 0;
int feb = 0;
printf("请输入一个十进制数字->");
scanf("%d", &n);
while (n)
{
feb += (n%2) * pow(10, i);
n /= 2;
i++;
}
printf("%d", feb);
return 0;
}