字符数组应用之进制转换
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 16
//8 进制转10 进制
int OctoDec(char a[],int base);
int main()
{
char a[20];
printf("请输入需要转换的数字");
scanf("%s",a);
int mydec;//存放10进制的数
mydec=OctoDec(a,N);
printf("%d",mydec);
return 0;
}
int OctoDec(char a[],int base)
{
int sum=0;
int len =strlen(a);
int weight=1;
//低位到高位相加
for(int i=len -1;i>=0;i--)
{
sum=sum+(a[i]-'0')*weight;
weight=weight*base;
}
return sum;
}