c语言二进制库函数 c语言二进制运算符

C语言十进制转二进制呵呵这样做的确输出的是反过来的数
方法一:
可以利用数组顺序存储转换过程中依次得到每个数字位,
转换结束后再按相反的次序输出数组内容即可得到正确的结果 。
方法二:
直接搞掂,这才叫强?。。?
且看我如何强法?。?
#include stdio.h
void trans(int x)
{
int a[30];//我算过了,1亿好像才29位的二进制,一般不用算
//这么大的数了吧~~
int i=0,rem;
do{
rem=x%2;x=x/2;
a[i]=rem;
i++;
}while(x!=0);//这个算法看你的代码知道你懂?。海?
while(i0)
printf("%d",a[--i]);
printf("\n");//这就是我的精华了 , 倒输出正确顺序的数~
}
void main()
{
int d;
printf("请输入一个十进制的正整数:\n");
do scanf("%d",d);while(d0);
trans(d);
}
我觉得楼主的水平也不差,
应该看得懂吧
我只是加了几句而已
加分哦:)
C语言中怎么输出数据的二进制没有专门的输出二进制语句 需要自己写函数 。
比如
void print_bin(int n)
{
int i;
for(i=sizeof(n)*4-1; i=0; i --)
{
if(n(1i))printf("1");
else printf("0");
}
}
这个是通过位操作 来打印一个int型的所有二进制值的函数 。
c语言,将十进制转化为二进制十进制转二进制可以使用库函数itoa 。
itoa函数原型:char*itoa(int value,char*string,int radix);
功能:将任意类型的数字转换为字符串 。在stdlib.h中与之有相反功能的函数是atoi 。
nt value 被转换的整数,char *string 转换后储存的字符数组 , int radix 转换进制数,如2,8,10,16 进制等 。
参考代码:
#include stdio.h
#includestdlib.h
int main()
{
int i=10;
char a[100];
itoa(i,a,2);
printf("%s\n",a);
return 0;
}
/*
1010
*/
【c语言二进制库函数 c语言二进制运算符】c语言二进制库函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言二进制运算符、c语言二进制库函数的信息别忘了在本站进行查找喔 。

    推荐阅读