| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 817 人关注过本帖
标题:函数方面
只看楼主 加入收藏
zlcn
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-1-18
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:3 
函数方面
#include <stdio.h>
double f(double x,double y)
{ if(x>=y)
return (x+y)/2.0;
else
return f(f(x+2,y-1),f(x+1,y-2)) //这里不知道怎么运算,求解答,是不是把5和7带入两个式子中,条件都满足,为什么结果是6而不是5,谢谢
}
int main()
{

    printf("%.1f",f(5.0,7.0));
}
搜索更多相关主题的帖子: 函数 double return 结果 printf 
2018-02-01 20:45
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:10 
代入5 7以后,因为5小于7. 于是执行else部分,f(7,6)的返回值又作为第一个参数,f(6,5)的返回值又作为第二个参数,这样两个参数传入f函数中,得到的返回值最后返回给f(5,7)
2018-02-01 23:00
Jeyyion_han
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:207
专家分:301
注 册:2018-1-22
收藏
得分:10 
printf里面第一个f函数执行完是6.5,第二个f函数执行完是5.5 再执行if中加起来为12再除以2得6
你可以把每一个f函数执行完了,可以打印出来,更加直接。
2018-02-02 18:38
Jeyyion_han
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:207
专家分:301
注 册:2018-1-22
收藏
得分:0 
printf里面第一个f函数执行完是6.5,第二个f函数执行完是5.5 再执行if中加起来为12再除以2得6
你可以把每一个f函数执行完了,可以打印出来,更加直接。
2018-02-02 18:38
快速回复:函数方面
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017387 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved