八进制转换为十进制,这个代码为什么最后运行会有负数?
但除了中间的负数,结果是对的,把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编辑过]