八进制转换为十进制,这个代码为什么最后运行会有负数?
但除了中间的负数,结果是对的,把i赋值了也不行
程序代码:#include<stdio.h>
int main()
{
int a,i=0;
int str[30];
printf("请输入一个整数:");
scanf("%d",&a);
for(int w;a>=8;i++)
{
w=a%8;
a=a/8;
str[i]=w;
}
printf("%d",a);
for(i=29;i>=0;i--)
printf("%d",str[i]);
printf("\n");
return 0;
}[此贴子已经被作者于2019-11-17 16:38编辑过]




