C语言 如何输入一个十进值数转换成二进值数

来源:百度知道 编辑:UC知道 时间:2024/05/25 03:16:53
小弟刚学C语言`~~这是老师出的一道题
我学的不多~~麻烦大虾们用最简便最容易的方法~

让这个数不断与除2取余输出余数序列的倒数即可。

#include <stdio.h>

int main( )
{
int num, tmp, t = 0;
int data[ 1000 ];
printf("请输入一个十进制数: ");
scanf("%d", &num);
while ( num )
{
tmp = num % 2;
num /= 2;
data[ t++ ] = tmp;
}
printf("转化的二进制数为: ");
for ( tmp = t - 1; tmp >= 0; tmp-- )
printf("%d", data[ tmp ]);
return 0;
}

#include <stdio.h>

void showbin(int n) /*n=0时无输出*/
{
static char s[256];
char t;
int i = 0;
int k;

while (n)
{
k = n%2;
s[i++] = '0'+k;
n/=2;
}
s[i--] = 0;

for (k=0;k<i;k++,i--)
t=s[k],s[k]=s[i],s[i]=t;

printf("%s",s);
}

int main()
{
int n;
printf("input n:");
scanf("%d", &n);
showbin(n);