c语言设计一个子函数,将任意一个八进制数据字符串转换为十进制数据(整数),并在主函数中调用此函数
时间: 2023-07-16 18:12:21 浏览: 129
C语言实现字符串转十进制算法
下面是一个将八进制字符串转换为十进制整数的C语言函数,你可以在主函数中调用它:
```c
#include <stdio.h>
#include <string.h>
int octalToDecimal(char octal[]) {
int decimal = 0, i = 0, n = strlen(octal);
// 从右往左遍历八进制字符串
while (n--) {
decimal += (octal[n] - '0') * pow(8, i++);
}
return decimal;
}
int main() {
char octal[20];
printf("输入一个八进制数:");
scanf("%s", octal);
// 调用函数将八进制字符串转换为十进制整数
int decimal = octalToDecimal(octal);
printf("十进制数为:%d\n", decimal);
return 0;
}
```
在这个示例中,我们首先定义了一个名为`octalToDecimal`的函数,它接受一个字符串参数并返回一个整数。在主函数中,我们首先要求用户输入一个八进制数,然后将该数字传递给`octalToDecimal`函数进行转换,并将结果打印出来。
阅读全文