单选题下列重载函数中,正确的是(  )。A void fun(int a,float b);void fun(int C,float d)B void fun(int a,float b);void fun(float a,int b)C float fun(int a,float b);int fun(int b,float a)D int fun(int a,int b);float fun(int a,int b)

题目
单选题
下列重载函数中,正确的是(  )。
A

void fun(int a,float b);void fun(int C,float d)

B

void fun(int a,float b);void fun(float a,int b)

C

float fun(int a,float b);int fun(int b,float a)

D

int fun(int a,int b);float fun(int a,int b)

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

函数 void fun(float *sn, int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。

void fun( float *sn, int n)

{ float s=0.0, w, f=-1.0;

int i=0;

for(i=0; i<=n; i++)

{ f=( )* f;

w=f/(2*i+1);

s+=w; }

( )=s;}


正确答案:
-1;*sn

第2题:

若已经声明了函数原型“void fun(int a,double b=0.0);”,则下列重载函数声明中正确的是( )。

A.void fun(int a=90,double b=0.0);

B.int fun(int a,double B);

C.void fun(double a,int B);

D.bool fun(int a,double b=0.0);


正确答案:C
解析:此题考查的是函数重载。在C++语言中,允许定义一系列函数名相同,但形参的个数和类型不完全相同的函数,即函数的重载。重载函数对返回值类型不做要求,返回值类型也不参与区分函数的重载形式。选项A)中参数表相同,返回类型也相同,所以错误。选项B),选项D)中相同参数表,不同返回类型所以错误。

第3题:

若各选项中所用变量已正确定义,函数 fun 中通过 return 语句返回一个函数值,以下选项中错误的程序是

A)

main()

{ …… x=fun(2,10); …… }

float fun(int a,int b){ …… }

B)

float fun(int a,int b){ …… }

main()

{ …… x=fun(i,j); …… }

C)

float fun(int,int);

main()

{ …… x=fun(2,10); …… }

float fun(int a,int b) { …… }

D)

main()

{ float fun(int i,int j);

…… x=fun(i,j); …… }

float fun(int a,int b){ …… }


正确答案:A
(20)A) 解析 : 在调用子函数时 , 应对其进行说明。选项 A) 中 , 调用时 , 没有对子函数进行说明 。选项 B) 、 C) 中被调用函数在主调函数之前定义 , 不用说明 ; 选项 D) 中在主调函数中对被调用函数的返回值类型进行了说明。

第4题:

有以下程序includefloat fun(int x,int y){return(x+y);}void main( ){int a=2,b=5

有以下程序 #include<iostream.h> float fun(int x,int y) {return(x+y);} void main( ) {int a=2,b=5,c=8; cout<<fun((int)fun(a+c,b) ,a-c) ;}程序运行后的输出结果是

A.编译出错

B.9

C.21

D.9


正确答案:B
解析:本题的运算过程是fun((int)fun (a+c,B,a-C,fun((int)fun(10,5),2-8),fun ((int)15.000000,-6),fun(15,-6)=9。

第5题:

若各选项中所用变量已正确定义,fun()函数中通过return语句返回一个函数值,下列选项中错误的程序是( )。

A.main() {……x=fun(2,10);……} float fun(int a,int b){……}

B.float fun(int a,int b){……} main() {……x=fun(i,j);……}

C.float fun(int,int); main() {……x=fun(2,10);……} float fun(int a,int b){……}

D.main() {float fun(int I,intj); ……x=fun(i,j);……} float fun(int a,int b){……}


正确答案:A
解析:C语言规定,函数必须先定义,后调用(函数的返回值类型为int或char时除外)。在选项A)中,调用的子函数在调用后面定义,所以不正确。在选项B)、C)中,被调用函数在主调函数之前定义,再在主函数中调用,所以是正确的;在选项D)中,在主调函数中先对子函数float fun(int i,int j)进行了定义,然后进行调用。

第6题:

下列函数原型声明中错误的是

A.void Fun(int x=O,int y=0);

B.void Fun(int x,int y);

C.void Fun(int x,int y=0);

D.void Fun(int x=0,int y);


正确答案:D
解析:本题考核函数的定义方法和调用方法。说明一个函数的格式为:函数类型>函数名>,(下函数参数表>);在C++中,允许在函数的说明或定义时给一个或多个参数指定默认值。但一旦为某个给定参数定义了缺省值,必须为后继的所有参数也定义缺省值。由此可知,选项D是错误的。

第7题:

( 21 )已知函数 fun 的原型为

int fun ( int,int,int ) ;

下列重载函数原型中错误的是

A ) char fun ( int,int ) ;

B ) double fun ( int,int,double ) ;

C ) int fun ( int,char* ) ;

D ) float fun ( int, int, int ) ;


正确答案:D

第8题:

下列程序段不会发生二义性的是_。

A.int fun(double p){…;} float fun(float p){…;} int x; x=fun(0);

B.int fun(float p){…;}float fun(unsigned p){…;} int x; x=fun(0);

C.int fun(int i,int j=2){…;}float fun(int i){…;} coutfun(5);

D.int fun(int i=2,int j=2){…;} int fun(int *p){…;} coutfun(5);


参考答案:D

第9题:

若有以下调用语句,则不正确的fun函数的首部是

main()

{ …

int a[50],n;

fun(n, &a[9]);

}

A.void fun(int m, int x[])

B.void fun(int s, int h[41])

C.void fun(int p, int *s)

D.void fun(int n, int a)


正确答案:D

第10题:

有以下程序:includeFloat fun(int x, int y){return(x+y) ;}void main( ){int a=2,

有以下程序: #include<iostream.h> Float fun(int x, int y) { return(x+y) ;} void main( ) { int a=2,b=5,c=8; cout < < fun((int) fun(a+c, b) ,a-c) ;} 程序运行后的输出结果是

A.编译出错

B.9

C.21

D.9.0


正确答案:B
解析:本题的运算过程是fun((int) fun (a+c, b) ,a-c) ,fun((int) fun(10,5) ,2-8) ,fun ((int) 15.000000,-6) ,fun(15,-6) =9。

更多相关问题