入门C ++题目 无位运算
给出一个简单结论:
把十进制数转二进制数方法 -- 预处理:把十进制数不停除以二直到商为0
输出:把余数倒序输出
# include <iostream>
using namespace std;
int main()
{
int DEC;
cin >> DEC;
int res[110];
int cnt = 0;
while(DEC) // 商为0就跳出循环 等价于 DEC != 0
{
res[cnt ++] = DEC % 2; // 把余数装进res数组里
DEC /= 2; // 十进制数每次除以 2
}
for(int i = cnt - 1; i >= 0; i --) cout << res[i]; // 倒叙输出
// 数组从0开始 所以一共有 cnt 个数 下标为 0 到 cnt - 1
return 0;
}