使用数组 编写一个十进制正整数转换为二进制数的程序
时间: 2024-11-30 09:21:28 浏览: 99
要编写一个十进制正整数转换为二进制数的程序,你可以使用位运算和数组来存储二进制结果。以下是一个简单的C++程序示例:
```cpp
#include <iostream>
// 函数定义,接受一个整数并返回其对应的二进制字符串
std::string decimalToBinary(int num) {
std::string binary(30, '0'); // 初始化一个足够大的数组来存放最多30位的二进制数(因为1023是30位)
int index = 0; // 用于记录当前二进制位的位置
while (num != 0) {
binary[index] = (num % 2) + '0'; // 取余数并转化为字符('0'或'1')
num /= 2; // 向左移动一位
++index;
}
// 如果最开始的位都是0,则删除它们
if (binary[0] == '0')
binary.erase(binary.begin());
return binary;
}
int main() {
int input;
std::cout << "Enter a positive integer: ";
std::cin >> input;
std::string binary = decimalToBinary(input);
std::cout << "The binary representation of " << input << " is: " << binary << std::endl;
return 0;
}
```
在这个程序中,`decimalToBinary`函数接收一个十进制数,然后用循环逐个计算它的二进制位,每次取模2得到余数(0 或 1),存入数组。当十进制数变为0时,跳出循环,最后可能需要移除多余的零位。
运行此程序后,它会提示你输入一个正整数,然后输出相应的二进制表示。例如,如果你输入10,程序会显示 `1010`。
阅读全文
相关推荐


















