帖子的总结01

来源:互联网 发布:算法导论 第三版 编辑:程序博客网 时间:2024/06/06 02:48
原贴:


http://bbs.csdn.net/topics/390068535


实现一个函数,
计算1到n的和,当然n是变量


不能出现以下:
乘除操作,位操作,if-else,for,while,switch,?:三目运算符,全局变量,模版,标准库函数


int func(int n, int *sum){n&&func(n-1,sum);return *sum += n;}



typedef int (*F)(int);int f0(int n){return 0;}int fn( int n ){F f[2] = {f0,fn};return n + f[n>0](n-1);}int main(){printf( "%d\n" , fn( 10 ) );}

typedef int ( *F )( int );int f0( int n ){    return 0;}int fn( int n ){    F f[2] = {fn,f0};    return n + f[!n]( n - 1 );}


……………………








0 0
原创粉丝点击