C语言:输入一个十进制转换成二进制输出
请教下怎么用C语言编写,谢谢
程序的主要思想是: 按位与的特点是,是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0。 也就是说,按位与运算有3个对象,分别是两个参与运算的两个数和运算有的结果。这个和小学学习的普通加法一样。如:a+b=c,,a,b,c分别是3个对象。
同样的,与运算也是一一样的意思:a & b = c。 只不过是与的意思和加法的意思不一样而已。 根据题目要求,我们已经得到了一个参与运算的数据,就是要转换的数,现在我们需要得到转换后的数,根据与运算规则,我们构造一个数,分别和待转换的数进行与运算,得到每一位的值,要么是0,要么是1。
程序如下: #include int main(void) { const int iTimes=sizeof(int) * 8; int iMask=1; int x = 12345; //这个就是要转换的数 int x2[iTimes]; int i; for( i=0 ; i=0 ; i-- ){ printf("%d",x2[i] ? 1 : 0 ); } return 0; }。
用这么麻烦吗?直接用函数转化一下就可以了
答:#include void divideData(const float number, int &integer, float &decimal); ...详情>>
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>