#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char* my_itoa1(int value, char str[], int radix)
{
char tmp_buff[33] = { 0 };
char ch;
int i = 0, j = 0;
/* 超出转换进制范围,退出 */
if ((radix < 2) || (radix > 36))
{
printf("radix err...\n");
return NULL;
}
/* 不是10进制的负数,退出函数 */
if ((value < 0) && (radix != 10))
{
printf("value err...\n");
return NULL;
}
/* 10进制支持负数转换 */
if ((value < 0) && (radix == 10))
{
value = -value;
*str++ = '-';
}
/* 转换 */
while (value)
{
ch = value % radix;
value /= radix;
if (ch < 10)
tmp_buff[i++] = ch + '0';
else
tmp_buff[i++] = ch + 'a' - 10;
}
/* 逆序 */
for (j = i - 1; j >= 0; j--)
{
*str++ = tmp_buff[j];
}
*str = '\0'; // 加上结束符
return str;
}
int main()
{
char str1[33];
int a;
scanf("%d", &a);
my_itoa1(a,str1,10);
printf("%s", str1);
return 0;
}