输入一个正整数,要求以相反的顺序输出该数。用递归方法实现。 **输入格式要求:"%d" 提示信息:"Enter number:" **输出格式要求:"%d" 程序运行示例如下: Enter number:35567899 99876553
第一次的思路:直接引用函数reverse,目的是使用函数中的printf语句,尽管函数有返回值,但在主函数中并没有调用;
#include<stdio.h>
int reverse(int n);
int main(void)
{
int n;
printf("Enter number:");
scanf("%d", &n);
reverse(n);
return 0;
}
int reverse(int n)
{
int m;
if (n == 0)
return -1;
else
{
m = n % 10;
printf("%d", m);
reverse(n / 10);
}
}
第二次的reverse函数优化:定义函数返回值为void可让函数不返回值,只要执行printf语句。
void reverse(int n)
{
if (n > 0)
printf("%d", n % 10);
reverse(n / 10);
}