C语言:用递归实现将输入的整数按逆序输出。如输入12345,则输出54321。
这个程序是我对构造函数有个更深的认识。
首先构造函数要先从头至尾走一边才会输出,无论输出语句加的位置(循环内,条件语句内...除外)。
然后构造函数递归可以把问题简单化,本题如果按常规思路,应该是做个循环,把各个数首尾交换。但是用调用使得其可以一次输出一位数,而并不是输出一个数组。
这道题是我开阔了编程思路。
# include "stdio.h"
int invert(long m)
{ printf("%ld", m%10);
m = m/10;
if (m>0)
invert(m) ;
}
首先构造函数要先从头至尾走一边才会输出,无论输出语句加的位置(循环内,条件语句内...除外)。
然后构造函数递归可以把问题简单化,本题如果按常规思路,应该是做个循环,把各个数首尾交换。但是用调用使得其可以一次输出一位数,而并不是输出一个数组。
这道题是我开阔了编程思路。
# include "stdio.h"
int invert(long m)
{ printf("%ld", m%10);
m = m/10;
if (m>0)
invert(m) ;
}
main()
{
long n;
printf("Enter n: ");
scanf("%ld", &n);
invert(n);
printf("\n");
}
作者:Steven(Steven's Think out)
出处:http://shiyangxt.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted on 2008-06-20 21:46 俱正Steven 阅读(26221) 评论(4) 编辑 收藏 举报