其实任何进制转换成十进制都是一个道理,算法也一样,几进制转十进制就是乘以几。
#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;
}