有如下程序: #include using namespace std; int fun(char x,char y) { if(x>y) return x; return y; }

admin2017-12-14  31

问题 有如下程序:
    #include
    using namespace std;
    int fun(char x,char y)
    {
    if(x>y)
    return x;
    return y;
    }
    int main()
    {
    int a(9),b(8),c(7);
    cout<    return 0;
    }
    运行后的输出结果是(    )。

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

答案B

解析 fun()函数接收两个字符参数x, y,比较两个字符的ASCII码大小,返回ASCII码较大的字符变量的ASCII码值;程序首先定义三个整数a,b,c,初始化值分别为9,8,7,然后输出表达式fun(fun(a,b),fun(b,c))的值,由于a>b,所以fun(a,b)返回值为a,b>c,fun(b,c)返回值为b,所以fun(fun(a,b),fun(b,c))等价于fun(a,b),也就等价于a的值,所以程序输出9,本题答案为B。
转载请注明原文地址:https://jikaoti.com/ti/wWt0FFFM
0

最新回复(0)