【发布时间】:2017-02-18 05:28:04
【问题描述】:
我的任务是编写一些代码,这些代码将接受用户输入并将数字转换为二进制数。到目前为止,我已经编写了一些代码,但是遇到了一个问题。我必须使用 for 循环和商余数方法。当我输出余数(二进制)时,它不会打印最后一个数字。
我要问的问题是:我必须在 for 循环中进行哪些更改才能打印出二进制数的最后一位?
int main()
{
int num;
int rem;
cout << "Please enter a number: ";
cin >> num;
for (int i = 0; i <= (num + 1); i++)
{
num /= 2;
rem = num % 2;
cout << rem;
}
_getch();
return 0;
}
感谢您的帮助,谢谢!
【问题讨论】:
-
只需交换指令
num /= 2;和rem = num % 2;您首先将您的数字除以2,因此您丢失了最后一个二进制数。
标签: c++ loops for-loop binary decimal