下面是一个示例代码,将十进制数转换为任意进制数:
#include
#include
std::string decimalToBase(int decimal, int base) {
std::string result = "";
while (decimal > 0) {
int remainder = decimal % base;
// 如果余数大于等于10,则转换为相应的字母
if (remainder >= 10) {
char digit = 'A' + (remainder - 10);
result = digit + result;
} else {
result = std::to_string(remainder) + result;
}
decimal /= base;
}
return result;
}
int main() {
int decimal;
int base;
std::cout << "请输入一个十进制数:";
std::cin >> decimal;
std::cout << "请输入目标进制数:";
std::cin >> base;
std::string result = decimalToBase(decimal, base);
std::cout << "转换结果为:" << result << std::endl;
return 0;
}
这个程序首先定义了一个decimalToBase
函数,它接受一个十进制数和一个目标进制数作为参数,并返回转换结果。在函数内部,我们使用一个循环来不断地取余数,并将每个余数转换为相应的数字或字母,并将其添加到结果字符串的前面。最后,将结果字符串返回。
在main
函数中,我们首先从用户输入中获取一个十进制数和一个目标进制数。然后,我们调用decimalToBase
函数将十进制数转换为目标进制数,并将结果打印出来。
使用这个程序,您可以将任意十进制数转换为其他进制,只需根据提示输入相应的数值即可。