C语言 十进制 转换任意进制。程序改对了 但是不太明白
/* while循环为何 使用的 >=1 不是>=0 i++ 为什么要放在 数组赋值前面 数组 s[0] 他有没有被赋变量
************* 弄明白就全明白了 ****************
*/
#include<stdio.h>
int main(void)
{
int s[1000];
int a; // 十进制整数 的变量
int i=0; // 数组变量
int q; // 进制
printf("十进制整数:\n");
scanf("%d",&a);
printf("需要换为几进制。输入:\n");
scanf("%d",&q);
while( a >= 1)
{
i++;
s[i]=a%q;
a=a/q;
}
while(i >=1 )
{
printf("%d",s[i]);
i--;
}
}