程序代码:
# include"stdio.h" # include"math.h" void convert10_8(int num) { int array[6]={0}; int i=5; int a,j; for(a=num; a>0; a=a/8) { array[i]=a%8; --i; } printf("10_8 output is="); while(array[i]==0) //这个循环执行不了,没有进行++i,所以后面输出是从j=-1开始的,就多了一个数字 { ++i; } for(j=i; j<6; j++) //不要上面的while循环,把这一句改成for(j=0; j<6; j++),就可以了 printf("%d",array[j]); printf("\n"); } main() { int num; while(1) { printf("input one number:\n"); scanf("%d",&num); convert10_8(num); } }
学C的秘诀=每天都来泡论坛