七进制转换
c语言
char* convertToBase7(int num)
{
int temp=abs(num);
char* res=(char*)malloc(sizeof(char)*11);
int i;
int count=0;
char t;
while(temp)
{
i=temp%7;
res[count]=i+'0';
count++;
temp/=7;
}
for(i=0;i<count/2;i++) //逆置
{
t=res[i];
res[i]=res[count-i-1];
res[count-i-1]=t;
}
if(num==0)
{
return "0";
}
else if(num>0)
{
res[count]='\0';
return res;
}
else
{
for(i=count-1;i>=0;i--)
{
res[i+1]=res[i];
}
res[0]='-';
res[count+1]='\0';
return res;
}
}