#include <iostream>
void convert_int_to_string(char ch[], int num);
int main()
{
char ch[20] = {0};
printf("请输入一个整数:"); //输入的数字不能超过int最大值
int num;
scanf_s("%d", &num);
convert_int_to_string(ch, num);
printf("ch = %s", ch);
//将一个整数转换成一个字符,整数范围只能是0~9
//char c = 9 + '0';
//printf("c = %c\n", c);
//将一个整数转换成字符串
//系统方法:char * itoa(int value, char *string, int radix);
//value: 要转换的整数,string: 转换后的字符串,radix: 转换进制数,如2,8,10,16 进制等。
/*
int num;
printf("请输入一个整数:");
scanf_s("%d", &num);
char ch[50] = { 0 };
_itoa_s(num, ch, 10);
printf("ch = %s", ch);
*/
}
void convert_int_to_string(char ch[], int num) {
if (num < 10) {
ch[0] = num + '0';
return;
}
else {
int last_number = num % 10;
num = num / 10;
int cmp_num = 1;
int cmp_times = 0;
//判断num是几位数
while (cmp_num <= num) {
cmp_num = cmp_num * 10;
cmp_times++;
}
ch[cmp_times] = last_number + '0';
convert_int_to_string(ch, num);
}
}