源程序:
这个程序是我对构造函数有个更深的认识。
首先构造函数要先从头至尾走一边才会输出,无论输出语句加的位置(循环内,条件语句内...除外)。
然后构造函数递归可以把问题简单化,本题如果按常规思路,应该是做个循环,把各个数首尾交换。但是用调用使得其可以一次输出一位数,而并不是输出一个数组。
这道题使我开阔了编程思路。
# 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");
}
作者:施杨(施杨's Think out)
出处:http://shiyangxt.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。