要求:将十进制数转换成二进制数
#include<iostream>
using namespace std;
#include <stdlib.h>
int main()
{
int a = -12;
int arr[16] = { 0 }; //这里我用一个长度为16的数组装所有(十进制)转换成的二进制的各位
int x, y=15;
if (a < 0) //一共俩种情况,一种是此种情况:该数为负数 另一种情况:该数为正数
{
a=abs(a); //将此数转换为正数,并将符号位设置为负符号位(1)
arr[0] = 1;
}
while (a > 0)
{
x = a % 2;
a /= 2;
arr[y--] = x;
}
for (int i = 0; i <16; i++)
{
cout << arr[i];
if (i % 4 == 3) //每个二进制位空一格
cout << " ";
}
cout << endl;
system("pause");
return 0;
}
运行结果: