1、d Print( ) const cout 2:n= n endl; ; int main()Sample a(10); const Sample b(20); a.Print(); b.Print(); return 0;输出结果为:5若有以下程序:#include class Test int x; public: void Setx(int i) x = i; int Putx() return x; ;int main()Test *p; Test a3; a0.Setx(5); a1.Setx(6); a2.Setx(7);for( int j = 0; j 3; j+) p = &
2、aj; cout Putx() ,; cout endl;return 0;出结果为: 6若有以下程序:#include class Basepublic: Base(int x) a = x; void Show() cout a endl; private: int a; ;class Derived: public Basepublic: Derived (int i): Base(i + 1), b(i) void Show() cout b Show(); return 0;输出结果为: 7若有以下程序:#include class Base public:void Fun() co
3、ut 1 endl; ;class Derived: public Basepublic:void Fun() cout 2 endl; ;int main()Derived a;Base *p;p = &a;(*p).Fun();a.Fun();return 0;输出结果为: 8. 下列程序的输出结果为 #include template class FFTT a1,a2,a3;public:FF(TT b1,TT b2, TT b3) a1 = b1; a2 = b2; a3 = b3; TT Sum() return a1 + a2 + a3; ;int main()FF x(2, 3,
4、 4), y(5, 7, 9);cout x.Sum( ) y.Sum() endl;return 0;输出结果为: 六、 编程题(本大题共2小题,每小题10分,共20分)1设计一个类Rect,要求如下:(1)该类中的私有数据成员length,width存放它的长和宽,并且设置它们的默认值是0。(2)通过成员函数设置其长和宽,并确保长和宽都在(0,50)范围之内。 (3)实现求周长函数GetPerimeter()。2 定义一个二维座标类Vector2d, 二个数据成员为double型x, y 为private属性。定义代二个参数的构造函数和一个Show( ) 函数用以输出x, y的值, 另外作
5、为成员函数重载的运算苻”+”的功能是将此类二个对象的数据成员x和y对应相加。这些成员函数的属性均为public. 请用C+编写此程序, 并编写测试程序进行测试。C+面向对象程序设计模拟试题六参考答案一、单项选择题1D) 2D) 3A)4C)5D)6B) 7D)8A)9A)10A).11D)12A)13B)14B)15B) 二、判断正误题1参考答案:“”2参考答案:“”3参考答案:“”4参考答案:“”5参考答案:“”三、 填空题1参考答案:对象2参考答案:10 3参考答案:模板函数4参考答案:引用5参考答案:operator 四、程序分析题(本大题共8小题,每小题3分,共24分)给出下面各程序的
6、输出结果。1输出结果为:A(): 5B(): 0A(): 6B(): 72输出结果为: x=1, y=683输出结果为: 154输出结果为:1:n=10,2:n=205输出结果为:5,6,76程序的输出结果为:27程序的输出结果为:1 28程序的输出结果为:9 21六、 编程题(本大题共2小题,每小题10分,共20分)1参考程序:#include using namespace std;class Rect private:double length, width; public: Rect(double l = 0, double w = 0): length(l), width(w) vo
7、id Set(double l, double w) if (length = 50 | width = 50 ) throw 数据不在指定范围(0,50)!;/ 抛出异常length = l;width = w;double GetPerimeter() return 2 * (length + width); ;int main() try/ 检查异常Rect obj(1, 8);cout 周长: obj.GetPerimeter() endl;catch (char *str)/ 捕捉异常/ 处理异常cout 异常信息: str endl;/ 输出异常信息return 0;2参考程序:#
8、include using namespace std;class Vector2d double x, y; public: Vector2d(double a, double b): x(a), y(b) void Show() cout x y endl; Vector2d operator+(Vector2d &obj); ;Vector2d Vector2d:operator+(Vector2d &obj) return Vector2d(x + obj.x, y + obj.y); int main() Vector2d d1(3.5, 4.5), d2(2.5, 5.5), d3(0.0, 0.0);d3 = d1 + d2; d3.Show(); return 0;C+面向对象程序设计模拟试题七一、选择题(每小题2分,共40分)1、C+是( )。 A. 面向对象的程序设计语言 B. 面向过程的程序设计语言 C. 既支持面向对象的程序设计又支持面向过程的程序设计的混合型语言 D. 非结构化的程序设计语言2、面向对象程序设计思想的主要特征中不包括( )。A. 封装性 B. 多态性 C. 继承性 D. 功能分解,逐步求精3、若定义:string