手机
当前位置:查字典教程网 >编程开发 >C语言 >c语言的cps实现求fibonacci数列示例
c语言的cps实现求fibonacci数列示例
摘要:CPS:http://en.wikipedia.org/wiki/Continuation-passing_style示例代码使用迭代+尾递...

CPS:http://en.wikipedia.org/wiki/Continuation-passing_style

示例代码使用迭代 + 尾递归。

复制代码 代码如下:

#include <stdio.h>

typedef void (*END_OF_END)(unsigned long);

void fibonacci(int, unsigned long, unsigned long, void(*)(unsigned long));

void

notify(unsigned long res) {

printf("Ultimate result: %lun" res);

exit(0);

}

/* Note: Fibonacci number might overflow! */

void

fibonacci(int n, unsigned long v1, unsigned long v2, void(*notify)(unsigned long)) {

if (n <= 0) notify(v2);

fibonacci(n - 1, v2, v1 + v2, notify);

}

int

main(void) {

fibonacci(100 - 2, 1, 1, notify);

return 0;

}

【c语言的cps实现求fibonacci数列示例】相关文章:

关于c语言的一个小bug详解

C语言 实现N阶乘的程序代码

C语言编写银行打印程序实例参考

c语言中static的用法详细示例分析

冒泡排序的三种实现方法

在c和c++中实现函数回调

c语言实现二叉查找树实例方法

C语言实现逆波兰式实例

C语言小程序 数组操作示例代码

C语言 解压华为固件的实例代码

精品推荐
分类导航