发布网友 发布时间:2022-06-07 08:28
共4个回答
热心网友 时间:2023-10-17 00:11
你上面的那个函数要求的返回值是long int长整型的,但是你在n>3时return的根本就不是这种类型的return (*p)(n-1)+(*p)(n-3)这样的用法是绝对错误的,你没定义p是什么样的指针,而且将n+1和n-3强制转换为指针类型,再做加法,这是完全不对的(你可以去看看指针方面的知识)至于写成递归很简单啊: long int f(int n) { if(n>3) return f(n+1)+f(n-3) ; else return n; }热心网友 时间:2023-10-17 00:12
long int (*p)();热心网友 时间:2023-10-17 00:12
#include "stdio.h"热心网友 时间:2023-10-17 00:13
我觉得速度慢是必然的,你用45的时候2的42次方次,都会存在内存中,占用很大的空间,所以速度会很慢。。其他的也不太懂。。 刚学C。。一起学习