有以下程序; char fun(char x , char y) { if(x<y) return x; return y; } main() { int a=’9’,b=’8’,c=’7’; print f

admin2009-01-15  30

问题 有以下程序;    char fun(char x , char y)    {  if(x<y)  return x;    return y;    }    main()    {  int a=’9’,b=’8’,c=’7’;    print f ("%c\n" , fun(fun(a, B) , fun(b, C) ) );    }    程序的执行结果是

选项 A、函数调用出错
B、8
C、9
D、7

答案8

解析 本题考核的知识点是函数的返回值以及返回值作为函数的参数。经过分析得出函数fun()的功能是比较形参x和形参y的大小,返回较小的一个.函数fun()有两个参数.本题中,首先定义了三个整型变量a、b和c,分别赋初值为9、8和7.然后执行函数fun(fun(a,b) ,fun(b,c) )。在该函数中分别将fun(a,b) 和fun(b,C) 函数的返回值作为该函数的两个实参。在函数fun(a,b) 中,  由于 a>b,故返回较小值b即8,在函数fun(b,C) 中,由于 b<c,  故返回较小值c即为7,  因此调用函数 fun(fun(a,b) ,fun(b,C) )相当于执行函数fun(8,7),返回较小值即7。所以,4个选项中选项D符合题意。
转载请注明原文地址:https://kaotiyun.com/show/E6Xp777K
0

最新回复(0)