用C语言编译:设计一个子函数,将任意一个八进制字符串转换为十进制整型数据,并在主函数输入数据,调用此函数并在主函数中输出结果
时间: 2024-05-10 09:19:41 浏览: 90
输入十六进制或八进制数据-C++程序设计(谭浩强完整版)
以下是用C语言编写的程序,实现将任意一个八进制字符串转换为十进制整型数据的功能:
```c
#include <stdio.h>
#include <string.h>
// 将八进制字符串转换为十进制整型数据
int octalToDecimal(char *str) {
int decimal = 0, len = strlen(str);
for (int i = 0; i < len; i++) {
decimal = decimal * 8 + str[i] - '0';
}
return decimal;
}
int main() {
char octal[100];
printf("请输入一个八进制数:");
scanf("%s", octal);
int decimal = octalToDecimal(octal);
printf("转换后的十进制数为:%d\n", decimal);
return 0;
}
```
运行程序后,输入一个八进制数,程序会调用 `octalToDecimal` 函数将其转换为十进制数,并输出转换后的结果。例如,输入 `123`,程序输出 `83`。
阅读全文