用c语言实现 十进制数与八进制数相互转换
时间: 2024-02-13 16:04:18 浏览: 133
将十进制数转换为八进制数:
```c
#include <stdio.h>
int main() {
int decimal, octal = 0, i = 1;
printf("Enter a decimal number: ");
scanf("%d", &decimal);
while (decimal != 0) {
octal += (decimal % 8) * i;
decimal /= 8;
i *= 10;
}
printf("The octal equivalent is: %d", octal);
return 0;
}
```
将八进制数转换为十进制数:
```c
#include <stdio.h>
int main() {
int octal, decimal = 0, i = 0;
printf("Enter an octal number: ");
scanf("%d", &octal);
while (octal != 0) {
decimal += (octal % 10) * pow(8, i);
++i;
octal /= 10;
}
printf("The decimal equivalent is: %d", decimal);
return 0;
}
```
需要注意的是,这里用到了数学库中的 pow 函数,因此需要在文件头部添加 #include <math.h>。
阅读全文