更多"使用VC6打开考生文件夹下的工程proj2。此工程包含一个源程序文件m"的相关试题:
[简答题]使用VC6打开考生文件夹下的工程proj2。此工程包含一个源程序文件main2.cpp,但该程序运行有问题。请改正main函数中的错误。
源程序文件main2.cpp清单如下:
//main2.cpp
#include <iostream>
using namespace std;
class MyClass
public:
MyClass(int m)
member=m;
~MyClass( )
int GetMember( )
return member;
private:
int member;
;
MyClass MakeObject(int m)
MyClass *pMyClass=new MyClass(m);
return *pMyClass;
int main ( )
int x=7;
/************found**************/
MyClass *myObj=MakeObject(x);
/*************found*************/
cout<<"My object has member"<<myObj.GetMember( )<<end1;
return 0;
[简答题]请使用VC6或使用[答题]菜单打开考生文件夹proj2下的工程proj2,此工程包含有一个源程序文件proj2. cpp,其中定义了Stack类和ArrayStack类。
Stack是一个用于表示数据结构“栈”的类,栈中的元素是字符型数据。Stack为抽象类,它只定义了栈的用户接口,如下所示:
公有成员函数 功能
push 入栈:在栈顶位置添加一个元素
pop 退栈:取出并返回栈顶元素
ArrayStack是Stack的派生类,它实现了Stack定义的接口。ArrayStack内部使用动态分配的字符数组作为栈元素的存储空间。数据成员maxSize表示的是栈的最大容量,top用于记录栈顶的位置。成员函数push和pop分别实现具体的入栈和退栈操作。
请在程序中的横线处填写适当的代码,然后删除横线,以实现上述功能。此程序的正确输出结果应为:
a, b, c
c, b, a
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//**** found ****”。
// proj2, cpp
#include < iostream >
using namespace std;
class Stack
public :
virtual void push(char c) = 0;
virtual char pop( ) = 0;
;
class ArrayStack : public Stack
char * p;
int maxSize ;
int top ;
public :
ArrayStack( int s)
top = 0;
maxSize = s;
//******** found ********
p =______;
~ ArrayStack ( )
//******** found ********
______;
void push(char c)
[简答题]使用VC6打开考生文件夹下的工程proj1。此工程包含一个源程序文件mainl.cpp,但该程序运行有问题。请改正主函数中的错误,使程序的输出结果是:
member = 0
member = 5
member = 10
源程序文件 mainl.cpp 清单如下:
//mainl.cpp
#include <iostream>
using namespace std;
class MyClass
public:
MyClass(int i)
member=i;
void SetMember(int m)
member=m;
int GetMember( )const
return member;
void Print( ) const
cout<<"member="<<member<<end1;
private:
int member;
;
int main( )
/***************found***********/
MyClass obj1;
obj1. Print( );
MyClass obj2(3);
/***************found***********/
obj1.member = 5;
/***************found***********/
MyClass. SetMember(10);
obj1. Print( );
obj2. Print( );
return 0;
[简答题]使用VC6打开考生文件夹下的工程MyProj6。此工程包含一个源程序文件MyMain6.cpp。在程序中,定义了一个Furniture类,Bed类和Sofa类是在Furniture类的基础上按公有继承的方式产生的派生类,Sleepersofa类是在Bed类和Sofa类的基础上按公有继承的方式产生的派生类。
请按要求完成下列操作,将类Date的定义补充完成:
①Bed类是在Furniture类的基础上按公有继承的方式产生的派生类,为了使程序中的多重继承关系不出现二义性。请在注释“//**1**”之后添加适当的语句。
②Sofa类是在Furniture类的基础上按公有继承的方式产生的派生类,为了使程序中的多重继承关系不出现二义性。请在注释“//**2**”之后添加适当的语句。
③Sleepersofa类是在Bed类和Sofa类的基础上按公有继承的方式产生的派生类。请在注释“//**3**”之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件MyMain6.cpp清单如下;
//MyMain6.cpp
#include<iostream>
using namespace std;
class Furniture
public:
Furniture( )
void setweight(int w)
weight=w;
int getweight( )
return weight;
protected:
int weight;
;
//* *1 * * class Bed definition
public:
Bed( )
void sleep( )
cout<<"sleeping..."<<end1;
;
//* *2* * class Sofa definition
public:
Sofa( )
[简答题]使用VC6打开考生文件夹下的工程RevProj7。此工程包含一个源程序文件RevMain6.cpp,但该程序运行有问题。请改正主函数中的错误,使程序的输出结果是:
MyNumber=0
MyNumber=1
MyNumber=2
源程序文件RevMain6.cpp清单如下:
//RevMain6.cpp
#include<iostream>
using namespace std;
class MyClass
public:
MyClass(int i)
MyNumber=i;
void SetMember(int m)
MyNumber=m;
int GetMember( )const
return MyNumber;
void Print( ) const
cout<<"MyNumber="<<MyNumber<<end1;
private:
int MyNumber;
;
int main( )
/* * * * * * * * *found* * * * * * * * *
MyClass *pObj=new MyClass(O);
pObj.Print( );
/* * * * * * * * *found* * * * * * * * *
pObj->MyNumber = 1;
pObj->Print( );
/* * * * * * * * *found* * * * * * * * *
MyClass. SetMember(2);
(*pObj).Print( );
return O;
[多项选择]综合应用题
使用VC6打开考生文件夹下的工程test6_3,此工程包含一个源程序文件test6_3.cpp,其中定义了用于表示考生的类Student,请按要求完成下列操作,将程序补充完整。
(1)定义私有数据成员code、english分别用于表示考生的编号、英语成绩、它们都是int型的数据。请在注释"//**1**"之后添加适当的语句。
(2)完成成员函数void Student::inputinformation( )的定义,该函数用于用户输入一个考生对象的信息,输入格式如下所示:
输入编号:
英语成绩:
计算机成绩:
请在注释"//**2**"之后添加适当的语句。
(3)利用已实现的类Student的成员函数,完成函数void firstname(Student *A[],int num)的定义,该函数根据考生信息A[],输出num个考生中总分最高者的编号及其相应的总分,在此不考虑总分相同的情况。请在注释"//**3**"之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test6_3.cpp清单如下:
#include
class Student
{
//**1**
int computer;
int total;
public:
void getinformation( );
void computesum( );
int getcode( );
int gettotalscore( );
~Student( );
};
void Student::getinformation( )
{
//**2**
cout<<"英语成绩:";
cin>>english;
cout<<"计算机成绩:";
cin>>computer;
}
void Student::computesum( )
{
total=english+computer;
cout<<"编号"<
[简答题]改错题
使用VC6打开考生文件夹下的工程test6_1,此工程包含一个源程序文件test6_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:
Constructor2
Constructor1
i=0
i=10
Destructor
源程序文件test6_1.cpp清单如下:
#include
class CSample
{
int i;
public:
CSample( ){cout<<"Constructor1"<disp( );
/**********found**********/
b->disp( );
}
[简答题]改错题
使用VC6打开考生文件夹下的工程kt6_1,此工程包含一个源程序文件kt6_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:
Constructor2
Constructor1
i=0
i=10
Destructor
源程序文件kt6_1.cpp清单如下:
#include
classCSample
{
inti;
public:
CSample( ){cout<<"Constructor1"<
CSample(intval){cout<<"Constructor2"<
~CSample( ){cout<<"Destructor"<
voiddisp( );
};
/**********found**********/
voiddisp( )
{cout<<"i="<
voidmain( )
{
CSample*a,b(10);
/**********found**********/
a->disp( );
/**********found**********/
b->disp( );
}
[填空题]使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。
程序异常,输出信息为
error
0
ERROR
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。
试题程序:
#include<iostream.h>
int main( )
try
throw("error");
//********error********
catch(char s)
cout<<s<<end1;
try
throw((int)0);
//********error********
catch( )
cout<<i<<end1;
try
throw(0);
throw("error");
//********error********
catch( )
cout<<"ERROR"<<end1;
return 0;