C语言:将一个十进制的正整数转换为二进制数并输出结果。

来源:百度知道 编辑:UC知道 时间:2024/09/27 06:07:46

十进制整数转换为二进制整数采用"除2取余,逆序排列"法。
具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为0时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
参考代码:
#include <stdio.h>
int main()
{
int n,a[100],i=0,j;
scanf("%d",&n);
while(n)
{
a[i++]=n%2;
n/=2;
}
for(j=i-1;j>=0;j--)
printf("%d",a[j]);
printf("\n");
return 0;
}
/*
输出:
10
1010
*/

#include <stdio.h>
#include <stdlib.h>
int main()
{
int temp;
char bin[1000];
scanf("%d",&temp);
itoa(temp,bin,2);
printf("二进制:%s\n",bin);
return 0;
}

C语言的版本我以前写过,不过嫌它太丑而且用处不多久没存档。
给你一个C++版本的吧!
#include <bitset>
int main()
{
int n = 121; //定义一个整数
bitset<16> bit(121); //16位
cout << bit << endl; //输出到控制台就是二进制了
}
比较