以下程序拟调用getmax函数,找出四个变量中最大的一个,但程序不完整:  #include <stdio.h>  int getmax(int x,int y)  {return x>yx:y;}  void main()  {   int a,b,

admin2022-04-01  39

问题 以下程序拟调用getmax函数,找出四个变量中最大的一个,但程序不完整:
 #include <stdio.h>
 int getmax(int x,int y)
 {return x>yx:y;}
 void main()
 {
    int a,b,C,d,mx;
    scanf("%d%d%d%d",&a,&b,&c,&d);
    printf("max=%d\n",________________);
 }
 以下选项若填入下划线处,不能实现上述功能的是(          )。

选项 A、getmax(getmax(getmax(a,b),c),d)
B、getmax(getmax(a,b),getmax(c,d))
C、getmax(a,getmax(b,getmax(c,d)))
D、mx=(getmax(a,b),getmax(c,d))

答案D

解析 getmax()函数接收两个整型变量x、y,使用条件运算符返回x和y中的较大值;main()函数首先输入a、b、c、d四个整数值,然后通过调用getmax()函数,输出它们的最大值;假设x、y是整数,选项A中,首先执行getmax(a,b),返回a和b中的较大值x,再执行getmax(x,c),返回x、c中的较大值y,最后,执行getmax(y,d)返回y、d中的较大值,满足题意,正确;选项B中,首先执行getmax(a,b),返回a、b的较大值x,再执行getmax(c,d),返回c、d中的较大值y,最后执行getmax(x,y),返回x、y中的较大值,正确;选项C中,首先执行getmax(c,d),返回c、d的较大值x,在执行getmax(b,x),返回b、x中的较大值y,最后执行getmax(a,y),返回a、y中的较大值,正确;选项D中,首先执行getmax(a,b),返回a、b的较大值x,再执行getmax(c,d),返回c、d中的较大值y,最后执行逗号表达式(x,y),返回值为y,不满足题意,所以本题答案为D。
转载请注明原文地址:https://kaotiyun.com/show/C1kp777K
0

最新回复(0)