c语言用递归法将一个整数n转换成字符串,然后输出,输出时要求各个字符之间用空格隔开。例如,输入483,应输出字符串“4 8 3”。n的位数不确定,可以是任意位数的整数。
时间: 2024-02-16 13:59:49 浏览: 97
C语言中利用递归的方式得到n!
5星 · 资源好评率100%
好的,这个问题可以用递归法解决。下面是这个问题的C语言代码实现:
```
#include <stdio.h>
void intToStr(int n) {
if (n < 10) {
printf("%d ", n);
} else {
intToStr(n / 10);
printf("%d ", n % 10);
}
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
printf("将 %d 转换成字符串后为:", n);
intToStr(n);
printf("\n");
return 0;
}
```
这个程序首先提示用户输入一个整数n,然后调用`intToStr`函数将n转换成字符串,并输出结果。`intToStr`函数的实现如下:
- 如果n小于10,则直接输出n并返回。
- 否则,先递归调用`intToStr(n / 10)`将n的高位转换成字符串并输出,再输出n的个位数并返回。
这样就能够实现将一个整数转换成字符串并输出,各个字符之间用空格隔开的功能。
阅读全文