一个函数把十进制整数转换为二进制…
2014-01-13 16:10
375 查看
#include<stdio.h>
int dec_to_bin(int num)
{
int i,d,re,bn;
i=0;bn=0;
d=num/2;
re=num%2;
bn|=re;
while(d!=0)
{
i++;re=d%2;
bn|=re<<i;
d=d/2;
}
return bn;
}
void print_bin(int b,int size)
{
int I=0;
for(I=0;I<size*8;I++)
{
if(
b&(1<<(size*8-1))==1)
printf("1");
else
printf("0");
b<<=1;
}
}
main()
{
int num,bn;
printf("please input decimal number:\n");
scanf("%d",&num);
bn=dec_to_bin(abs(num));
if(num<0)printf("-");
print_bin(bn,sizeof(int));
}
int dec_to_bin(int num)
{
int i,d,re,bn;
i=0;bn=0;
d=num/2;
re=num%2;
bn|=re;
while(d!=0)
{
i++;re=d%2;
bn|=re<<i;
d=d/2;
}
return bn;
}
void print_bin(int b,int size)
{
int I=0;
for(I=0;I<size*8;I++)
{
if(
b&(1<<(size*8-1))==1)
printf("1");
else
printf("0");
b<<=1;
}
}
main()
{
int num,bn;
printf("please input decimal number:\n");
scanf("%d",&num);
bn=dec_to_bin(abs(num));
if(num<0)printf("-");
print_bin(bn,sizeof(int));
}
相关文章推荐
- 计算将一个十进制整数转换成二进制含多少个1
- 将一个十进制整数转换为二进制字符串
- 8、编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数, 然后打印出这个十进制整数对应的二进制形式。
- 一个整数的二进制序列倒置后再转换为十进制的整数
- 一个十进制整数转换成二进制含多少个1
- 一个十进制整数转换成二进制含多少个1
- 计算将一个十进制整数转换成二进制含多少个1
- 编程-十进制整数转换为二进制
- 输入一个表示整数的字符串,把该字符串转换成整数并输出(实现atoi函数功能)
- Java编程题:将一个十六进制的字符串转换成一个十进制的整数
- ip(点分十进制 <==> 二进制整数)之间的转换
- 转一个二进制和十进制之间的转换程序
- C语言-十进制转换为二进制函数
- 实现一个函数int my_atoi(char s[]),可以将一个字符串转换为对应的整数。
- 【剑指offer】C语言:实现函数可以将一个字符串转换为对应的整数,如+1234输出1234
- 从键盘输入某个十进制小数或整数,转换成对应的二进制小数并输出。 (查询十进制小数转换成二进制小数的算法,使用循环来实现。 最多保留小数位后7位数字即可)算法
- 实现atoi这个函数,将一个字符串转换为整数。如果没有合法的整数,返回0。如果整数超出了32位整数的范围,返回INT_MAX(2147483647)如果是正整数
- 编写一个函数itob(int n,char s[],int b),将整数n转换为以b进制的数。保存到s中
- 字符串参数必须包含一个或者多个数字,函数应该把这些数字字符转换为整数并返回这个整数。如果字符串参数包含了任何非数字字符,函数就返回零
- 【c语言】编写一个函数,将一个数字字符串转换成该字符串对应的数字(包括正整数、负整数)