若程序中定义了以下函数 double myadd(double

题目

若程序中定义了以下函数 double myadd(double a,double b) { return(a+b); } 并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是()

  • A、double myadd(double a,b);
  • B、double myadd(double,double);
  • C、double myadd(double b,double a);
  • D、double myadd(double x,double y);
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

第2题:

若定义了函数double*function(),则函数function的返回值为()。

A.实数型

B.实数的地址

C.指向函数的指针

D.函数的地址


正确答案:B

第3题:

若程序中定义了以下函数:double myadd(double a,double b){ return(a+b);}并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是( )。A.double myadd(double a, b)B.double myadd(double ,double )C.double myadd(double b,double a)D.double myadd(double x,double y)


正确答案:A
当函数的调用在函数的定义之前时,需要对函数做一个说明,说明的格式为:返回值类型名 函数名 (类型名 形参,类型名 形参);形参的名称可以任意,也可以省略,但是类型名不能省。

第4题:

使用VC6打开考生文件夹下的工程test11_3。此工程包含一个test11_3.cpp,其中定义了类CPosition,但该类的定义都并不完整。请按要求完成下列操作,将类CPosition的定义补充完整。

(1)在类定义外完成重载的两个构造函数CPosition()和CPosition(double dx,double dy),其中前者为不带参数的构造函数,使CPosition对象的默认值为x=0,y=0,后者为带参数的构造函数,把数据成员x和y分别初始化为参数dx和dy的值。请在注释“//**1**”之后添加适当的语句。

(2)在类体中添加函数move(double ax,double ay)的定义,使得点的坐标x和y分别移动ax和ay个单位,请在注释“// **2**”之后添加适当的语句。

(3)完成函数double distance (double bx,double by)的定义,该函数返回*this和点(bx,by)的距离,请在注释“//**3**”之后添加适当的语句。

注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。

源程序文件test11_3.cpp清单如下:

include<iostream.h>

include<math.h>

class CPosition

{

public:

CPosition();

CPosition(double dx,double dy);

double getx();

double gety();

// ** 2 **

double distance(double bx,double by);

private:

double x;

double y;

};

// ** 1 **

{

x=0;y=0;

}

CPosition::CPosition(double dx,double dy)

{

x=dx;y=dy;

}

double CPosition::getx()

{

return x;

}

double CPosition::gety()

{

return y;

}

double CPosition::distance(double bx,double by)

{

// ** 3 **

}

void main()

{

double a,b;

cout << "Input x, y position of a point:";

cin >> a >> b;

CPosition psA(a,b);

cout << “Input x,y position of another point:";

cin >> a >> b;

cout << "The distance is " << psA.distance(a,b) <<endl;

}


正确答案:(1) CPosition::CPosition () (2) void move(double axdouble ay){x+=ax;y+=ay;}; (3) return sqrt (pow (x-bx2)+pow (y-by2));
(1) CPosition::CPosition () (2) void move(double ax,double ay){x+=ax;y+=ay;}; (3) return sqrt (pow (x-bx,2)+pow (y-by,2)); 解析:本题主要考查考生对于类的定义和重载构造函数的掌握情况。在(3)中使用了基本的数学函数sqrt(x)求x的开方,pow (x, n)函数是求x的n次方。

第5题:

若定义了以下函数: void f(……) { …… *p=(double *)malloc(10 * sizeof(double)); …… } p是该函数的形参,要求通过p把动态分配存储单元的地址传回主调函数,则形参p的正确定义应当是( )

A.double *p

B.float **p

C.double **p

D.float *p


正确答案:C

第6题:

阅读下列程序说明和C++代码,将应填入(n)处。

【说明】

①在类体中添加函数move(double ax,double ay)的定义,使得点的坐标x和y分别移动 ax和ay个单位。

②在类定义外完成重载的两个构造函数CPosition()和CPosition(double dx,double dy),其中前者为不带参数的构造函数,使CPosition对象的默认值为x=0,y=0,后者为带参数的构造函数,把数据成员x和y分别初始化为参数dx和dy的值。

③完成函数double distance(double bx,double by)的定义,该函数返回*this和点(bx, by)的距离。

注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。

源程序文件test5.cpp清单如下:

include<iostream.h>

include<math.h>

class CPosition

{

public:

CPosition();

CPosition(double dx,double dy);

double getx();

double gety();

(1)

double distance(double bx,double by);

private:

double x;

double y;

};

(2)

{

x=0;y=0;

}

CPosition::CPosition(doub,e dx,doub,e dy)

{

x=dx; y=dy;

}

double CPosition::getx()

{

return x;

}

double CPosition::gety()

{

return y;

}

double CPosition::distance(double bx,double by)

{

(3)

}

vold main()

{

double a,b;

cout<<"|nput x,y position of a point:";

cin >> a >> b;

CPosition psA(a,b);

cout<<"Input x,y position of another point:";

cin >>a >> b;

cout <<"The distance is" <<psA.distance(a,b) <<end1;

}


正确答案:(1)void move(double axdouble ay){x+=ax;y+ =ay;}; (2)CPosition::CPosition()(3)return sqrt(pow(x-bx 2)+pow(y-by2));
(1)void move(double ax,double ay){x+=ax;y+ =ay;}; (2)CPosition::CPosition()(3)return sqrt(pow(x-bx, 2)+pow(y-by,2)); 解析:本题主要考查考生对于类的定义和重载构造函数的掌握情况。在(3)中使用了基本的数学函数sqrt(x)求x的开方,pow(x,n)函数是求x的n次方。

第7题:

若主调函数为double型,被调函数定义中没有函数类型说明,而return语句中的表达式为double型,则被调函数返回值的类型是double型。()

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


参考答案:错误

第8题:

●试题五

阅读下列程序说明和C++代码,将应填入(n)处的字句写在答卷的对应栏内。

【说明】

①在类体中添加函数move(double ax, double ay)的定义,使得点的坐标x和y分别移动ax和ay个单位。

②在类定义外完成重载的两个构造函数CPosition()和CPosition(double dx, double dy),其中前者为不带参数的构造函数,使CPosition对象的默认值为x=0,y=0,后者为带参数的构造函数,把数据成员x和y分别初始化为参数dx和dy的值。

③完成函数double distance(double bx, double by)的定义,该函数返回*this和点(bx,by)的距离。

注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。

源程序文件test5.cpp清单如下:

#include<iostream.h>

#include <math.h>

class CPosition

{

public:

CPosition();

CPosition(double dx, double dy);

double getx();

double gety();

(1)

double distance(double bx, double by);

private:

double x;

double y;

};

(2)

{

x=0; y=0;

}

CPosition::CPosition(double dx, double dy)

{

x=dx; y=dy;

}

double CPosition::getx()

{

return x;

}

double CPosition::gety()

{

return y;

}

double CPosition::distance(double bx, double by)

{

(3)

}

void main()

{

double a,b;

cout << "Input x, y position of a point: ";

cin >> a >> b;

CPosition psA(a, b);

cout << "Input x, y position of another point: ";

cin >> a >> b;

cout << "The distance is " << psA.distance(a,b) <<endl;

}


正确答案:

●试题五

【答案】(1void move(double ax, double ay){x += ax;y += ay;};

2CPosition::CPosition()3return sqrt(pow(x-bx, 2) + pow(y-by, 2));

【解析】本题主要考查考生对于类的定义和重载构造函数的掌握情况。在(3)中使用了基本的数学函数sqrt(x)x的开方,pow(x,n)函数是求xn次方。

 

第9题:

在类A中定义了方法fun(double,int),类B继承自类A,并定义了函数fun(double),这种方式称为(46)。若B中重新定义函数fun(double,int)的函数体,这种方式称为(47)。

(62)

A.重置

B.重载

C.代理

D.委托


正确答案:B

第10题:

以下正确的函数定义是______。

A.double f1(int x,int y)

B.double f1(int x;int y)

C.double f1(int x;float y)

D.double f1(int x,y)


正确答案:A

更多相关问题