永发信息网

#include<stdio.h> char fun(char *); void main() { char *s="one",a[5]={0},(*f1)()=fun

答案:3  悬赏:0  手机版
解决时间 2021-03-14 04:23
  • 提问者网友:一抹荒凉废墟
  • 2021-03-13 13:57
以下选项中对函数fun的正确调用语句是
(A)(*f1)(a); (B)*f1(*s); (C)fun(&a); (D)ch=*f1(s);
最佳答案
  • 五星知识达人网友:鸠书
  • 2021-03-13 14:04
刚才说错了
全部回答
  • 1楼网友:慢性怪人
  • 2021-03-13 15:04
A呀。。。
  • 2楼网友:时间的尘埃
  • 2021-03-13 14:14
这个函数是使用递归算法计算斐波纳契数列的,那个数列是这样的: 1,1,2,3,5,8,13,21。。。。。依此类推 大致解释如下,你看看吧,应该能看明白了吧。 #include int fun(int n,int *s) { int f1,f2; if(n==1 || n==2) // 如果是第一个或者第二个数,他们均为1 *s=1; else { fun(n-1,&f1); // 递归计算前一个 fun(n-2,&f2); // 递归计算前两个位置的 *s=f1+f2; // 数列的定义就是当前位置是前两个数字之和 } return 0; } int main() { int x; fun(6,&x); // 看看数列第六个位置是不是8 printf("%d\n",x); fun(8,&x); printf("%d\n",x);// 看看数列第8个位置是不是21 return 0; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯