请写一个十六进制转换八进制C++程序
时间: 2023-03-26 09:01:16 浏览: 100
以下是 CSDN 开发的 C 语言模型回答:
可以的,以下是一个十六进制转换八进制的 C 程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char hex[20], oct[20];
int i, j, len, dec = , octal = , base = 1;
printf("请输入一个十六进制数:");
scanf("%s", hex);
len = strlen(hex);
for (i = len - 1; i >= ; i--)
{
if (hex[i] >= '' && hex[i] <= '9')
{
dec += (hex[i] - 48) * base;
base *= 16;
}
else if (hex[i] >= 'A' && hex[i] <= 'F')
{
dec += (hex[i] - 55) * base;
base *= 16;
}
else if (hex[i] >= 'a' && hex[i] <= 'f')
{
dec += (hex[i] - 87) * base;
base *= 16;
}
}
i = 1;
while (dec != )
{
octal += (dec % 8) * i;
dec /= 8;
i *= 10;
}
printf("转换成八进制为:%d\n", octal);
return ;
}
```
希望对您有所帮助!
阅读全文