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

admin2020-12-21  13

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

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

答案C

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

相关试题推荐
最新回复(0)