一个c预言的题目、求这个程序的输出结果、麻烦说一下过程、谢谢了.
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/20 05:34:47
一个c预言的题目、求这个程序的输出结果、麻烦说一下过程、谢谢了.
#include fun (int x){ int p; if(x==0||x==1) return(3); p=x-fun(x-2); return p;}
main( ){printf ("%d\n",fun(9));}
#include fun (int x){ int p; if(x==0||x==1) return(3); p=x-fun(x-2); return p;}
main( ){printf ("%d\n",fun(9));}
![一个c预言的题目、求这个程序的输出结果、麻烦说一下过程、谢谢了.](/uploads/image/z/18558806-14-6.jpg?t=%E4%B8%80%E4%B8%AAc%E9%A2%84%E8%A8%80%E7%9A%84%E9%A2%98%E7%9B%AE%E3%80%81%E6%B1%82%E8%BF%99%E4%B8%AA%E7%A8%8B%E5%BA%8F%E7%9A%84%E8%BE%93%E5%87%BA%E7%BB%93%E6%9E%9C%E3%80%81%E9%BA%BB%E7%83%A6%E8%AF%B4%E4%B8%80%E4%B8%8B%E8%BF%87%E7%A8%8B%E3%80%81%E8%B0%A2%E8%B0%A2%E4%BA%86.)
递归函数调用.用数学表达就是:
已知 fun(x) = x - fun(x-2),且fun(0)=3,fun(1)=3,求fun(9)的值.
fun(9)=9- fun(7) //计算到这里,要先等待fun(7)的计算结果才能继续往下计算
=9- (7- fun(5)) //而到了这一步,则要等待fun(5)返回计算结果才能继续运算
=9- (7- (5- fun(3))) //同理,等待fun(3)返回计算结果
=9- (7- (5- (3- fun(1)))) //遇到了fun(0)或fun(1),此时不用再递归了,逐层向主调函数返回计算结果
=9- (7- (5- (3- 3))))
=7
在fun(x)函数中,当执行到p=x-fun(x-2)时,当前fun(x)函数会挂起(入栈),等待fun(x-2)返回计算结果.而在fun(x-2)函数执行过程中又会被挂起(入栈),等待fun(x-4)函数返回结果,...,如此往复,直到遇见fun(0)或fun(1).
已知 fun(x) = x - fun(x-2),且fun(0)=3,fun(1)=3,求fun(9)的值.
fun(9)=9- fun(7) //计算到这里,要先等待fun(7)的计算结果才能继续往下计算
=9- (7- fun(5)) //而到了这一步,则要等待fun(5)返回计算结果才能继续运算
=9- (7- (5- fun(3))) //同理,等待fun(3)返回计算结果
=9- (7- (5- (3- fun(1)))) //遇到了fun(0)或fun(1),此时不用再递归了,逐层向主调函数返回计算结果
=9- (7- (5- (3- 3))))
=7
在fun(x)函数中,当执行到p=x-fun(x-2)时,当前fun(x)函数会挂起(入栈),等待fun(x-2)返回计算结果.而在fun(x-2)函数执行过程中又会被挂起(入栈),等待fun(x-4)函数返回结果,...,如此往复,直到遇见fun(0)或fun(1).
麻烦讲解C语言的计算过程 题目如下(输出结果为何是45)
一道C语言题目,求解答以下程序的输出结果
求下面程序的输出结果写好题号,
编写一个程序,求矩阵A,B的和,结果存入矩阵C中,并按矩阵形式输出.
求一道题目的解法编写一个程序;输入一个正整数,把它的各位数字前后颠倒一下,并输出颠倒后的结果;例如:如果输入的是1234
C语言输入3个数,求输出最大那个数,我这个到底哪里错了?输出结果老是一个很大的数4199402
编写一个JAVA程序,求1!+2!+3!+.+10!的结果,并将结果输出
用C语言编写一个程序,计算一个整数的三次方,并输出计算结果
写出下列每个程序运行后的输出结果,急求谢谢
C语言 麻烦讲解一下输出的结果3,2,-1
简单C语言程序,while循环写一个程序求数列1+1/2+1/3+……1/n的和并将结果输出
C语言程序输出结果不对,就是一个简单的公式!