用递归法将一个整数n转换成字符串。例如,输人483,应输出字符串”483”。n的位数不确定,可以是任意位数的整数
用递归法将一个整数n转换成字符串。例如,输人483,应输出字符串”483”。n的位数不确定,可以是任意位数的整数
题目解析:
递归法求解主要要有结束条件,此题为n/10 == 0时就直接输出,其次本题还要考虑如果整数位负数的情形,此时需要输出一个字符串的负号。
#include<stdio.h>
void Convert(int n)
{
int i;
if ((i = n / 10) != 0)
Convert(i);
putchar(n % 10 + '0');
}
int main()
{
int number;
printf("input an integer: ");
scanf("%d", &number);
printf("output: ");
if (number < 0)
{
putchar('-'); //先输出一个负号'-'
number = -number;
}
Convert(number);
printf("\n");
return 0;
}
运行结果:

关注公众号 牛顿顿的星空 在里面回复 谭浩强答案,获取完整版答案,有问题也可以公众号后台私信我

浙公网安备 33010602011771号