题目
本题是谭浩强《C程序设计课后习题》题7.17。
题目:
用递归法将一个整数n转换成字符串。例如,输人483,应输出字 符串”483”。n的位数不确定,可以是任意位数的整数。
以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同进步。——来自考研路上的lwj
一、解题思路
思路:
使用递归关键是要有退出的条件,本题的递归思路是从后往前递归,输出字符时自然就会从前往后输出。
二、代码部分
1.引入库
代码如下(示例):
#include<stdio.h>
2.主函数部分
代码如下(示例):
void prints(int s)
{
if (s / 10)
prints(s / 10);
putchar(s % 10 + '0');//从后往前递归,输出时从前往后
}
void main()
{
int s;
printf("请输入一个整数:");
scanf("%d", &s);
if (s < 0)//如果s输入的是负数的情况下,需要将先将负号输出然后将负数变为正数运算
{
putchar('-');
s *=-1;
}
prints(s);
}
三、执行结果
输入:
请输入一个整数:-100321
输出:
-100321