33 lines
792 B
C++
33 lines
792 B
C++
// 输入一个数,输出它的二进制表示。
|
|
#include <iostream>
|
|
|
|
using namespace std;
|
|
|
|
int main()
|
|
{
|
|
char arr[32] = {};
|
|
char res[32] = {};
|
|
int n, temp_n;
|
|
int cnt = 0;
|
|
cout << "请输入一个整数: ";
|
|
cin >> n;
|
|
temp_n = n;
|
|
int x;
|
|
cout << "请输入要转换的进制 (十以内): ";
|
|
cin >> x;
|
|
|
|
while (n)
|
|
{
|
|
arr[cnt++] = n % x + '0'; // 将数字转换为字符; 加 48 也可以, 因为 '0' 的 ASCII 码为 48
|
|
n /= x; // 除以 2
|
|
}
|
|
|
|
// cout << "原本的进制表示为:" << arr << endl;
|
|
|
|
// 数组逆转
|
|
for (int i = 0; i < cnt; i++)
|
|
res[i] = arr[cnt - i - 1];
|
|
|
|
cout << "十进制数字 " << temp_n << " 的 " << x << " 进制表示为:" << res << endl;
|
|
return 0;
|
|
} |