编写一程序,输入任意十进制数,将其以八进制、十六进制的形式输出。
时间: 2024-11-16 15:20:20 浏览: 1
要编一个C++程序,让用户输入一个十进制数字,然后转换为八进制和十六进制并输出,你可以使用`std::stringstream`和`std::bitset`库来进行字符串转换。这里是一个简单的示例:
```cpp
#include <iostream>
#include <sstream>
#include <bitset>
int main() {
int decimal_num;
std::cout << "请输入一个十进制数字: ";
std::cin >> decimal_num;
// 转换为八进制
std::stringstream octal_stream;
octal_stream << std::oct << decimal_num;
std::string octal = octal_stream.str();
// 转换为十六进制
std::stringstream hex_stream;
hex_stream << std::hex << decimal_num;
std::string hexadecimal = hex_stream.str();
std::cout << "八进制形式: " << octal << std::endl;
std::cout << "十六进制形式: " << hexadecimal << std::endl;
return 0;
}
```
在这个程序中,我们首先获取用户的输入(十进制数),然后分别创建两个`std::stringstream`对象(`octal_stream`和`hex_stream`)来处理八进制和十六进制转换。`std::oct`和`std::hex`分别是用于设置输出格式为八进制和十六进制的标志,最后我们将转换后的字符串提取出来。
运行这个程序时,用户会看到他们输入的十进制数以八进制和十六进制的形式显示。
阅读全文