有如下程序: #include using namespace std; int fl(int x,int y=5){return x+y;} int n(double x){return x;} int main(

admin2021-06-10  10

问题 有如下程序:
    #include
    using namespace std;
    int fl(int x,int y=5){return x+y;}
    int n(double x){return x;}
    int main(){
    int a=3;
    double b=2.5;
    cout<    return 0;
    }
    运行后的输出结果是(    )。

选项 A、5
B、6
C、10
D、11

答案C

解析 题意中两个f1()函数是重载函数,其中第一个f1()函数有两个整型形参x,y,其中y有默认值5,函数返回值x+y;第二个fl()函数有一个double类型形参x,再将x转换为整型作为函数返回值;main()函数中,表达式fl(a)+fl(b)两次调用fl(),fl(a)由于实参a是整型变量,所以会调用第一个fl()函数,其中形参x的值为a,y的值为5,返回值为a+5=8;fl(b)由于实参b是double类型,所以调用第二个fl()函数,返回值为2;所以程序运行结果为8+2=10,答案为C。
转载请注明原文地址:https://jikaoti.com/ti/QWh0FFFM
0

最新回复(0)