|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
要求:多组输入,八进制转十进制
疑问:为什么第一组输出的结果是正确的,此后输出的结果都是“9326”
#include<stdio.h>
#include<math.h>
int main()
{
int count;//输入八进制
int result;//转换成十进制后的结果
int i=0,j;
int a[100];
while(scanf("%d",&count)!=EOF)
{
while(count!=0)
{
a[i++]=count%10;
count/=10;
}
result=0;
for(j=0;j<i;j++)
{
result+=a[j]*pow(8,j);
}
printf("%d\n",result);
}
return 0;
}
- #include<stdio.h>
- #include<math.h>
- int main()
- {
- int count;//输入八进制
- int result;//转换成十进制后的结果
- int i=0,j;
- int a[100];
- while(scanf("%d",&count)!=EOF)
- {
- i=0;///////////////////////////////////////////////////////
- while(count!=0)
- {
- a[i++]=count%10;
- count/=10;
- }
- result=0;
- for(j=0;j<i;j++)
- {
- result+=a[j]*pow(8,j);
- }
- printf("%d\n",result);
-
- }
- return 0;
- }
复制代码
|
|