C++试编写一个子函数实现十进制数转换为二进制数,其中函数输入参数为一个十进制数,返回值为一个二进制数(可以保存到一个整型变量)。
时间: 2024-12-17 12:31:10 浏览: 6
在C++中,你可以使用位运算符将十进制数转换为二进制数。这里是一个简单的子函数实现:
```cpp
#include <iostream>
// 定义函数decToBinary,输入参数为int类型的decimal,返回值类型也为int
int decToBinary(int decimal) {
if (decimal == 0)
return 0; // 特殊情况,0的二进制表示就是0
int binary = 0;
for (int i = 0; decimal > 0; ++i, decimal >>= 1) { // 将decimal右移一位,并保留最低位
binary |= (decimal & 1); // 如果最低位是1,则binary加1,即取异或操作
}
return binary;
}
int main() {
int decimalNum;
std::cout << "Enter a decimal number: ";
std::cin >> decimalNum;
int binaryNum = decToBinary(decimalNum);
std::cout << "The binary representation of " << decimalNum << " is: " << binaryNum << std::endl;
return 0;
}
```
在这个例子中,`decToBinary`函数通过不断将输入的十进制数除以2并将余数存入结果(binary),直到十进制数变为0,实现了十进制转二进制的过程。
阅读全文