重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 计算机类考试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

使用VC6打开考生文件夹下的工程test13_3。此工程包含一个test13_.cpp,其中定义了类Vector,但类的

定义并不完整。请按要求完成下列操作,将程序补充完整。

(1)完成构造函数的定义,把数据成员size初始化为参数s的值,数据成员buffer指向动态申请的int型size大小的空间。请在注释“//**1**”之后添加适当的语句。

(2)完成拷贝构造函数的定义,注意解决多次删除的问题。请在注释“//**2**”之后添加适当的语句。

(3)完成成员函数elem的定义,该函数返回buffer的第ndx个元素的值,注意如果ndx超界,请输出“error in index”。请在注释“//**3**”之后添加适当的语句。

(4)完成析构函数的定义,要求先将字符d打印在屏幕上,再释放buffer指向的空间。请在注释“//**4**”之后添加适当的语句。

输出结果如下:

1234567891012345678910dd

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

源程序文件test13_3清单如下:

include<iostream.h>

include<stdlib.h>

class Vector

{

public:

Vector(int s=100);

Vector(Vector &v);

int &elem(int ndx);

void display();

void set();

~Vector();

protected:

int size;

int *buffer;

};

Vector::Vector(int s)

{

// ** 1 **

}

Vector::Vector(Vector &v)

{

// ** 2 **

for(int i=0; i<size; i++)

{

*(buffer+i)=*(v.buffer+i);

}

}

int &Vector::elem(int ndx)

{

// ** 3 **

{

cout<<"error in index"<<endl;

exit(1);

}

return buffer[ndx];

}

void Vector::display()

{

for(int j=0;j<size;j++)

cout<<elem(i)<<endl;

}

void Vector::set()

{

for(int j=0;i<size;j++)

elem(j)=j+1;

}

Vector::~Vector()

{

// ** 4 **

}

void main()

{

Vector a(10);

Vector b(a);

a. set();

b. set();

a. display();

b. display();

}

查看答案
更多“使用VC6打开考生文件夹下的工程test13_3。此工程包含一个test13_.cpp,其中定义了类Vector,但类的”相关的问题

第1题

使用VC6打开考生文件夹下的工程test14_1,此工程包含一个源程序文件test14_1.cpp,但该程序运行有

问题,请改正程序中的错误,使该程序的输出结果如下:

member1=5member2=5

member1=7member2=9

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

include<iostream.h>

class My Class

{

/************** found *****************

friend void setMember(MyClass myObj,char meml)

{

myObj.member1=mem1;

myObj.member2=mem1;

cout<<"member1="<<myObi.member1<<" member2="<<myObj.member2<<endl;

}

/************** found ***************/

void setMember(MyClass& myObj,char mem1,char mem2)

{

myObj.member1=mem1;

myObj.member2=mem2;

cout<<"member1:"<<myObj.member1<<"member2="<<myObj.member2<<endl;

}

private:

char member1;

char member2;

};

void main()

{

MyClass theObj;

/************** found ****************/

theObj.setMember(theObj,'5');

theObj.setMember(theObj,'7','9');

}

点击查看答案

第2题

求1~100的和,可写成for(s=0,i=1;【】;i++)s+=i;的形式。

求1~100的和,可写成for(s=0,i=1;【 】;i++)s+=i;的形式。

点击查看答案

第3题

程序的输出结果是【 】。 include <iostream> using namespace std; class A{ public: A(){a=b=2;}

程序的输出结果是【 】。

include <iostream>

using namespace std;

class A{

public:

A(){a=b=2;}

A(int i,int j){a=i;b=j;}

void display(){cout<<a<<b;}

private:

int a,b;

};

void main(){

A m,n(4,8);

m.display();

n.display();

}

点击查看答案

第4题

在C++中,若要使派生类中的某些成员不可见,主要是指基类中的【 】成员。

点击查看答案

第5题

下列程序的执行结果是______。 include<iostream.h> include<iomanip.h> using namespace std; vo

下列程序的执行结果是______。

include<iostream.h>

include<iomanip.h>

using namespace std;

voidmain()

{

cout<<setfill('x')<<setw(10);

cout<<"Hello"<<end1;

}

点击查看答案

第6题

下列程序的执行结果是______。 include<lostream.h> int a; int sum_a(void) { a=a+5; return a;

下列程序的执行结果是______。

include<lostream.h>

int a;

int sum_a(void)

{

a=a+5;

return a;

}

void main(void)

{

a=a+sum_a( );

cout<<a<<endl;

}

点击查看答案

第7题

语句cout<<setiosflagags(ios::showpos)<<125<<"/t"<<-125<<endl;的输出结果为【】。

语句cout<<setiosflagags(ios::showpos)<<125<<"/t"<<-125<<endl;的输出结果为【 】。

点击查看答案

第8题

重载的运算符仍然保持其原来的操作数个数、优先级和【】不变。

重载的运算符仍然保持其原来的操作数个数、优先级和【 】不变。

点击查看答案

第9题

执行这个程序的输出结果是(); include<iostream> using namespace std; class TestClass1 { publ

执行这个程序的输出结果是( );

include<iostream>

using namespace std;

class TestClass1

{

public:

void fun1(){cout<<"TestClass1\n";}

virtual void fun2(){cout<<"TestClass1\n";}

};

class TestClass2:public TestClass1

{

public:

void fun1(){cout<<"TestClass2\n";}

void fun2(){cout<<"TestClass2\n";}

};

void f(TestClass1&b){b.fun1();b.fun2();}

int main()

{

TestClass2 obj;

f(obj);

return 0;

}

点击查看答案

第10题

使用VC6打开考生文件夹下的工程test4_3。此工程包含一个源程序文件test4_3.cpp,其对一个学校的教

师和考生情况进行了描述。由于教师和考生之间有相同的信息,如姓名、年龄等,所以可抽象出一个基类person,考生类student和教师类teacher作为person类的派生类。请按要求完成下列操作,将程序中的类定义补充完整。

(1)定义基类person的私有数据成员name和age,分别用于表示姓名和年龄,name为字符指针,age为血型的数据。请在注释“//**1**”之后添加适当的语句。

(2)完成基类person的重载构造函数person(char *mint a)的定义,把数据成员name,age分别初始化为参数n,a的值,请在注释“//**2**”之后添加适当的语句。

(3)根据主函数main中对s1的声明,定义派生类student的构造函数。在注释“//**3**”之后添加适当的语句。

(4)完成派生类teacher成员函数void setinf(ehar *n,int a,char *d,char *1)的定义,其功能为记录教师的姓名、年龄、院,系与职称信息。请在注释“//**4**”之后添加适当的语句。

输出结果如下:

刘雷(45)destructor

蒋军(23)destructor

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

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

include<iostream.h>

class person

{

//**1**

public:

person(){}

person(char *n,int a)

{

//**2**

}

void setname(char *n){name=n;)

void setage(int a){age=a;}

~person(){cout<<name<<"("<<age<<")destructor"<<endl;)

};

class student:public person

{

char *department;

int code;

public:

//**3**

{

department=d;

code=c;

}

};

class teacher:public person

{

char *department;

char *level;

public:

teacher(){}

void setinf(char *n,int a,char *d,char *1)

{

//**4**

department=d;

level=1;

}

};

void main()

{

student s1("蒋军",23,"计算机学院",2);

teacher t1;

t1.setinf("刘雷",45,"计算机学院","教授");

}

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案