工学

填空题类A有如下成员函数:int A::fun(double x){return (int) x/2;}int A::fun(int x){return x*2;}设a为类A的对象,在主函数中有int s=a.fun(6.0)+a.fun(2),则执行该语句后,s的值为()。

题目
填空题
类A有如下成员函数:int A::fun(double x){return (int) x/2;}int A::fun(int x){return x*2;}设a为类A的对象,在主函数中有int s=a.fun(6.0)+a.fun(2),则执行该语句后,s的值为()。
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

第2题:

( 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

第3题:

若有以下函数首部

int fun(double x[10], int *n)

则下面针对此函数的函数声明语句中正确的是

A)int fun(double x, int *n);

B)int fun(double , int );

C)int fun(double *x, int n);

D)int fun(double *, int *);


正确答案:D
答案 D
解析 : 函数首部 int fun(double x[10],int *n) 表示这个函数的返回值是整型,其第 1 个形式参数是一个双精度的一维数组,第 2 个参数是一个整型指针。在 C 语言中,一维数组的名字表示的是一维数组的地址,所以选项D是正确的。

第4题:

类A有如下成员函数: int A::fun(double x){return (int) x/2;} int A::fun(int x){return x*2;} 设a为类A的对象,在主函数中执行语句int s=a.fun(6.0)+a.fun(2)后的s值为7。()

此题为判断题(对,错)。


正确答案:正确

第5题:

以下正确的函数头定义形式是

A.double fun(int x,int y)

B.double fun(int x;int y)

C.double fun(int x,int y);

D.double fun(int x,y);


正确答案:A

第6题:

有以下程序

int fun1(double a){return a*=a;}

int fun2(double x,double y)

{ double a=0,b=0;

a=fun1(x);b=fun1(y);return(int)(a+b);

}

main()

{ double w; w=fun2(1.1,2.0); …… }

程序执行后变量 w 中的值是

A)5.21

B)5

C)5.0

D)0.0


正确答案:C
(33)C) 解析 : 题中变 量 w 的定义 为 doubl e 型 , 函 数 fun2() 的定义 为 in t 型 , 按照各类数值型数据间的混合运算 , 整型数据被转换为实型数据。

第7题:

若各选项中所用变量已正确定义,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)进行了定义,然后进行调用。

第8题:

若各选项中所用变量已正确定义,函数 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) 中在主调函数中对被调用函数的返回值类型进行了说明。

第9题:

以下正确的函数原型语句是( )。

A、double fun(int x,int y)

B、double fun(int x;int y)

C、double fun(int,int);

D、double fun(int x,y);


参考答案C

第10题:

类A有如下成员函数: int A::fun(double x){return (int) x/2;} int A::fun(int x){return x*2;} 设a为类A的对象,在主函数中执行语句int s=a.fun(6)+a.fun(2.0)后的s值为13。()

此题为判断题(对,错)。


正确答案:正确

更多相关问题