有以下程序: #include<stdio.h> int fun(int x,int y) { if(x==y)return(x); else return((x+y)/2); } main() { i

admin2018-01-14  23

问题 有以下程序:
   #include<stdio.h>
   int fun(int x,int y)
   {
   if(x==y)return(x);
   else return((x+y)/2);
   }
   main()
   {
   int a=4,b=5,c=6;
   printf("%d\n",fun(2*a,fun(b,c)));
   }
   程序运行后的输出结果是(    )。

选项 A、3
B、6
C、8
D、12

答案B

解析 fun的功能是求两数的平均数,并且参数和结果都为整型。题中是用一个函数作为另一个函数的参数,所以应该先做里面嵌套的函数即fun(b,c),值为5。fun(2*a,fun(b,c))即为计算fun(2*4,5),所以结果为(5+8)/2=6。
转载请注明原文地址:https://kaotiyun.com/show/YTxp777K
0

最新回复(0)