for (n=number; n > 0; n=n/2)
{
if (n % 2 == 0)
printf ("0");
else
printf ("1");
}
这是我的代码的一部分。我已提示用户输入分配给 number 的整数,并且我想打印该整数的二进制转换。然而;目前我的代码反向打印二进制数字(即当我输入 56 时,它打印 000111 与 111000)。如何让它反向打印?
最佳答案
有多种方法可以打印整数的二进制等价物。
这是我使用递归的解决方案。
void call (int n ) {
if (n > 0 ){
call(n/2);/* to prints in reverse order */
if(n%2 ==0 )
printf ("0");
else
printf ("1");
}
}
关于c - 如何反转这个 for 循环的打印?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48691111/