以下程序运行后的输出结果是 #include<stdio.h> int f(int x, int

以下程序运行后的输出结果是#include<stdio.h>intf(intx,inty){return((y-x)*x);}main(){inta=3,b=4,c=5,... 以下程序运行后的输出结果是 #include<stdio.h> int f(int x, int y) { return((y-x)*x); } main() { int a=3, b=4, c=5, d; d=f(f(a, b), f(a, c)); printf("%d\n", d); }求详细步骤谢谢~~~~ 展开
 我来答
MyOpen
2019-05-21 · TA获得超过2863个赞
知道答主
回答量:68
采纳率:0%
帮助的人:4.2万
展开全部

由于f(int x,int y)函数返回的值是(y-x)*x,相当于说f(int x,int y)=(y-x)*x;

这里主要是计算嵌套函数f(f(a, b), f(a, c));

先将f(a, b)和 f(a, c)带进去,得到f((b-a)*a,(c-a)*a)=f((4-3)*3,(5-3)*3)=f(3,6)

最后计算f(3,6)=(6-3)*3=9,

所以最后的输出结果就是9,执行以上程序结果如下:

扩展资料:

C语言中函数的定义都是相互平行、相互独立的,但是在调用的时候可以互相嵌套,就是指将某函数作为另一函数的参数使用,为大家所熟知的例子就是qsort函数会将一个比较器cmp作为参数。

void __fileDECL qsort (

void *base,

size_t num,

size_t width,

int (__fileDECL *comp)(const void *, const void *)

)

百度网友f91c999
推荐于2017-12-15 · TA获得超过182个赞
知道小有建树答主
回答量:377
采纳率:0%
帮助的人:111万
展开全部

f(int x,int y)这个函数返回的值是(y-x)*x

d=f(f(a,b),f(a,c))相当于
int m,n;
m=f(a,b);n=f(a,c);
d=f(m,n);
由f函数可知m=(b-a)*a;n=(c-a)*a;
d=(n-m)*m;
依次带入值m=(4-3)*3=3;n=(5-3)*3=6;
d=(6-3)*3=9;
所以输出值是9
更多追问追答
追问
太感谢啦~一下子全部都明白了~~~
追答
太客气了,能解决你的问题我也很高兴!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-01-01
展开全部
我真的不知道爱=哎问别人不
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式