若有以下程序: int f(int x,int y) { return (y-x)*x; } main() { int a=3,b=4,c=5,d; d=f(f(3,4),f(3,5)); prin

admin2009-04-15  17

问题 若有以下程序:
   int  f(int x,int y)
   {
   return  (y-x)*x;
   }
   main()
   {
   int a=3,b=4,c=5,d;
   d=f(f(3,4),f(3,5));
   printf("%d\n",d);
   }
   执行后输出的结果是【  】。

选项

答案9

解析 在主函数中函数f(f(3,4),f(3,5))的返回值赋给do函数的第一个参数为f(3,4)的返回值,函数f(3,4)返回值为(4-3)*3=3, f(3,5)返回值为(5-3)*3=6,那么函数f(f(3,4),f(3,5))等价于函数f(3,6)其返回值为(6-3)*3=9。因此d被赋值为9,所以输出9。
转载请注明原文地址:https://kaotiyun.com/show/jpXp777K
0

最新回复(0)