目录
题目
代码
运行截图
题目
(进制表)编写一个程序要求打印一张表,内容是1~256范围内每个十进制数对应的二进制、八进制和十六进制形式。如果还不熟悉这些计数系统,可先阅读附录 D。提示:可以使用流操纵符dec、oct 和 hex来分别显示十进制、八进制和十六进制格式。
代码
#include <bits/stdc++.h>
#include <algorithm>
using namespace std;string DecToBinary(int num) // 十进制转二进制输出
{string r;while (num != 0){r += (num % 2 == 0 ? "0" : "1");num /= 2;} // 此时r是 地位在前高位在后,逆置才是二进制正确值reverse(r.begin(), r.end()); // 头文件algorithmreturn r;
}int main()
{cout << "十进制\t二进制\t八进制\t十六进制\n";for (int i = 1; i <= 256; i++){cout<< dec << i << "\t" << DecToBinary(i) << "\t"<< oct << i << "\t" << hex << i << endl;}return 0;
}