代码如下,求大佬指点
#include<stdio.h>
#include<math.h>
#include<string.h>
int main ( )
{
long long n,k;
scanf("%lld",&n);
k=n;
int s[22]={0},i1,i2,j;
for(i1=0;i1<=22;i1++)
{
s[i1]=k%16;
k=k/16;
if(k==0)
break;
i1++;
s[i1]=k%8;
k=k/8;
if(k==0)
break;
}
j=i1/2;
if(j>=1)
{
for(i2=1;i2<=j+1;i2=i2+2)
{
s[i2]=s[i2]+8;
}
}
for(i2=1;i2<=i1+1;i2=i2+3)
{
if(s[i2]<=9)
printf("%d",s[i2]);
if(s[i2]==10)
printf("A");
if(s[i2]==11)
printf("B");
if(s[i2]==12)
printf("C");
if(s[i2]==13)
printf("D");
if(s[i2]==14)
printf("E");
if(s[i2]==15)
printf("F");
i2--;
if(s[i2]<=9)
printf("%d",s[i2]);
if(s[i2]==10)
printf("A");
if(s[i2]==11)
printf("B");
if(s[i2]==12)
printf("C");
if(s[i2]==13)
printf("D");
if(s[i2]==14)
printf("E");
if(s[i2]==15)
printf("F");
printf(" ");
}
return 0;
}