将八进制数字字符组成的字符串转换为与其值相等的十进制整数

/*将八进制数字字符组成的字符串转换为与其值相等的十进制整数*/
#include<stdio.h>
#include<string.h>
int main(void)
{
 char a[6];
 int b,i,c=1;
 gets(a);               //输入八进制数字字符串
 b=a[strlen(a)-1]-'0';      //b赋初始值,为倒数第一字符与字符'0'的差值
 for(i=strlen(a)-2;i>=0;i--)
 {
  c*=8;                 //从倒数第二位开始,i每往前进一位,c都要乘以8;
  b+=(a[i]-'0')*c;      //并进行累加
 }
 printf("%d\n",b);//输出b
	
 return 0;	
}

猜你喜欢

转载自blog.csdn.net/qq_42110350/article/details/87900894