有以下程序 float fun(int x,int y) { return(x+y);} main() { int a=2,b=5,c=8; printf("%3.0f\n",fun((int)fun(a+c,b),a-c

admin2013-06-11  24

问题 有以下程序    float fun(int x,int y)    {  return(x+y);}    main()    {  int a=2,b=5,c=8;    printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}    程序运行后的输出结果是

选项 A、编译出错
B、9
C、21
D、9

答案2

解析 本题考查函数的综合知识。首先,我们可以利用强制转换类型转换运算符将一个表达式转换成所需类型。如:(double)a是将a转换成double类型;(int)(x+y)是将x+y的值转换成整型。
   本题可按部就班地逐步运算:
   fun((int)fun(a+c,b),a-c)
   fun((int)fun(10,5),2-8)
   fun((int)15.000000,-6)
   fun(15,-6)
   9
转载请注明原文地址:https://jikaoti.com/ti/OAn0FFFM
0

最新回复(0)