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

admin2022-10-24  40

问题 以下不完整的程序拟实现调用getmax函数,找出四个变量中最大的一个:
 #include<stdio.h>
 int getmax(int x,int y)
 {return x>y  x: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这4个整数值,然后通过调用getmax函数,输出它们的最大值。假设x、y是整数,选项A中,首先执行“getmax(a,b)”,返回a、b中的较大值x,再执行“getmax(x,c)”,返回x、c中的较大值y,最后执行“getmax(y,d)”,返回y、d中的较大值,满足题意,所以选项A正确;选项B中,首先执行“getmax(a,b)”,返回a、b中的较大值x,再执行“getmax(c,d)”,返回c、d中的较大值y,最后执行“getmax(x,y)”,返回x、y中的较大值,满足题意,所以选项B正确;选项C中,首先执行“getmax(c,d)”,返回c、d中的较大值x,再执行“getmax(b,x)”,返回b、x中的较大值y,最后执行“getmax(a,y)”,返回a、y中的较大值,满足题意,所以选项C正确;选项D中,首先执行“getmax(a,b)”,返回a、b中的较大值x,再执行“getmax(c,d)”,返回c、d中的较大值y,最后执行逗号表达式“(x,y)”,返回值为y,不满足题意,所以选项D错误。故本题答案为D选项。
转载请注明原文地址:https://kaotiyun.com/show/kWkp777K
0

最新回复(0)