其实任何进制转换成十进制都是一个道理,算法也一样,几进制转十进制就是乘以几。
#include<stdio.h>
int fun(char a[]){
int i=0,n=0;
for(i;a[i]!='\0';i++)
{
if(a[i]>='0'&&a[i]<='8')
n=n*8+a[i]-'0';
}
return n;
}
int main()
{
int i=0,n;
char a[20],ch;
while((ch=getchar())!='\0')
{
if(ch>='0'&&ch<='7')
a[i++]=ch;
else
{
a[i]='\0';
break;
}
}
n=fun(a);
printf("%d\n",n);
return 0;
}