08级面向对象程序设计语言A期末考试试题A

合集下载

2008年1月全国自学考试试题面向对象程序设计试卷

2008年1月全国自学考试试题面向对象程序设计试卷

全国2008年1月高等教育自学考试面向对象程序设计试题课程代码:02328一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.编写C++程序一般需经过的几个步骤依次是( )A. 编译、编辑、连接、调试B. 编辑、编译、连接、调试C. 编译、调试、编辑、连接D. 编辑、调试、编译、连接2.函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为( )A.1B.2C.4D.53.假定AB为一个类,则执行“AB a(2), b[3], *p[4];”语句时共调用该类构造函数的次数为( )A. 3B. 4C. 5D. 94.假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“delete []px;”语句时共调用该类析构函数的次数为( )A. 0B. 1C. nD. n+15.如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为( )A. a.operator++(1)B. operator++(a)C. operator++(a,1)D. a.operator++()6. 继承机制的作用是( )A. 信息隐藏B. 数据封装C. 定义新类D. 数据抽象7.以下哪个基类中的成员函数表示纯虚函数?( )A. virtual void vf(int)B. void vf(int) = 0C. virtual void vf()=0D. virtual void yf(int){}18.假定一个类的构造函数为“A(int aa, int bb) {a=aa; b=aa*bb;}”,则执行“Ax(4,5);”语句后,x.a和x.b的值分别为( )A. 4和5B. 5和4C. 4和20D. 20和59.一个类的静态数据成员所表示属性( )A. 是类或对象的属性B. 只是对象的属性C. 只是类的属性D. 是类和友元的属性10.一个C++源程序文件的扩展名为( )A. .hB. .cC. .cppD. .cp二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。

面向对象编程技术2007-2008试卷A(安徽工业大学)汇总

面向对象编程技术2007-2008试卷A(安徽工业大学)汇总

……………………………… 装………………………………订………………………………… 线………………………………课程________________________班级________________________姓名__________________________学号________________________……………………………… 密………………………………封………………………………… 线………………………………安徽工业大学试题纸(一)题号一二三四五六七八九十十一十二十三十四十五十六十七十八十九二十总分得分2007~2008学年第一学期期末考试《面向对象的编程技术》试卷(A)注意:所有答案请写在答题纸上一、单项选择题(120=20分)1.为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择( 。

A内联函数 B.重载函数 C递归函数 D.函数模板2.将两个字符串连接起来组成一个字符串时,在C++中选用( 函数。

A.strlen( B.strcap ( C.strcat( D.strcmp(3.对于任一个类,用户所能定义的析构函数的个数至多为( 。

A.0 B.1 C .2 D.任意个4.下列( 的调用方式是引用调用。

A.形参和实参都是变量 B.形参是指针,实参是地址值C. 形参是引用,实参是变量 D.形参是变量,实参是地址值5. 对于一个类的构造函数,其函数名与类名( 。

A. 完全相同 B.基本相同C.不相同 D. 无关系6.假定一个类AB只含有一个整型数据成员a,用户为该类定义的带参构造函数可以为( 。

A. ABU({ } B.AB(;a(O{ }C.AB(int aa=O {a=aa;} D.AB(int aa{ }7.如果表达式a+b中的“+”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为( 。

A.a.operator+(b B.b.operator+(aC.operator+(a,b D.operator(a+b8.对于公有继承,基类的公有和保护成员在派生类中将( 成员。

成人教育 《面向对象程序设计》期末考试复习题及参考答案

成人教育 《面向对象程序设计》期末考试复习题及参考答案

面向对象程序设计复习题二一、填空1.程序的三种常见结构是、、,其中结构是程序的默认结构。

2.同名方法给出不同的实现,并通过参数类型或个数进行区分,称为。

3.和“继承”匹配的概念是。

4.由类构建对象的过程称为。

5.抽象类是含有的类。

6.实现软件复用有两种方式,分别为、、。

7.有定义const int *p,p称为。

8.通过继承产生的类称为。

9.virtual关键字在C++中有两个用处,分贝是,和。

10.方法重载和实现了多态性。

11.请给出C++外的另外一种支持面向对象设计语言。

12.类的三个要素是、、。

13.对象释放前执行的函数是。

二、名词解释1、构造函数2、对象3、运算符重载4、析构函数5. 面向对象6. 继承三、简答1.比较类和结构体?2.重载的意义?3.抽象类的作用和意义?4.组合与继承的区别?四、辩析1.任何父类对象都可以被子类对象替代。

2.public修饰符号破坏了数据的开放性。

3.private继承方式不能产生子类。

4.不能实例化的类一定是抽象类。

五、综合回答1.简述多态的实现机制。

2.谈谈多态的意义。

3.面向对象程序设计思想的优点和缺点。

面向对象程序设计复习题二答案一、填空(1)顺序(2)选择(3)循环(4)顺序(5)函数重载(6)抽象(7)实例化(8)纯虚函数(9)继承(10) 组合(9)和(10)不区分顺序(11)常量指针(12)派生类(13)虚函数(14)虚拟继承(13)和(14)不区分顺序(15)覆盖(16)Java或者C#(17)类的标识(18)类的状态(19)类的操作(17)(18)(19)不区分顺序(20)析构函数二、名词解释1、当类实例化时自动调用的成员函数,负责实现对象的初始化2、按照数据类型分配的内存空间,可以实现方法的调用3、将系统定义的运算符操作对象的类型扩展的过程,一般针对自定义类型4、对象空间释放之前自动调用的函数5、是程序设计思想,相对面向过程而言更加强调封装性6、两个类之间的一种关系,其中一个类的某个成员类型是另一个类三、简答1、C++中类和结构体具有同等的功能,唯一区别是类缺省成员属性是private,而结构体缺省为public2、重载的意义在于丰富了动作的多样性,但是并不加重程序员的负担。

《面向对象程序设计》期末考核试题样例及解答

《面向对象程序设计》期末考核试题样例及解答

《面向对象程序设计》期末考核试题样例及解答一、单项选择(每小题1分,12小题,共12分)1. 源程序文件的缺省扩展名为( )。

A. B. C. D.2. x>0 5的相反表达式为()。

A. x<=0 5B. x<=0 5C. x>0 5D. x>0 53. 在下面的字符数组定义中,有语法错误的是( )。

A. a[20]=“”;B. a[]=“55.”;C. a[15];D. a[10]=’5’;4. 以下正确的函数原型语句是( )。

A. ( y)B. ( y)C. ();D. ( );5. 在下面存储类中,()的对象不是局部变量。

A. 外部静态类B. 自动类C. 函数形参D. 寄存器类6. 假定有“ { [40]; ;}; * ;”,则正确的语句是()。

A. (>,””);B. (,””);C. (*,””);D. ((*)->,””);7. 软件产品所具有的全部或部分地再用于新的应用的能力称为该软件的()。

A. 可维护性B. 可复用性C. 兼容性D. 正确性8. 在多文件结构的程序中,通常把含有()函数的文件称为()。

A. 主文件B. 实现文件C. 程序文件D. 头文件9. 在一个用链表实现的队列类中,假定每个结点包含的值域用表示,包含的指针域用表示,链队的队首指针用表示,队尾指针用表示,若链队为空,则进行插入时必须把新结点的地址赋给( )。

A. B.C. 和D. 或10. 假定为一个类,则执行“ a, b(2), c[3], *;”语句时共调用该类无参构造函数的次数为( )。

A. 5B. 6C. 3D. 411. 引入友元的主要目的是为了()。

A. 增强数据安全性B. 提高程序的可靠性C. 提高程序的效率和灵活性D. 保证类的封装性12. 如果是类B在类A的基础上构造,那么,就称()。

A. 类A为基类或父类,类B为超类或子类B. 类A为基类、父类或超类,类B为派生类或子类C. 类A为派生类,类B为基类D. 类A为派生类或子类,类B为基类、父类或超类二、填空(每空1分,15小题,共18分)1. 语言是在语言的基础上发展起来的。

计08面向对象程序设计 考试参考答案(A卷)

计08面向对象程序设计  考试参考答案(A卷)
cout<<B.AuthorName <<endl;
cout<<B.Publish <<endl;
cout<<B.PageNum <<endl;
return Output;
}
int main()
{
Book b1,b2("数据结构","严教授","¸高等教育出版社",200);
cout<<b2;
ofstream f1("BookFile.txt",ios::out);
delete bed.
delete chair.
delete bed.
五、理解问答题(10分)
1.解答:
(1):(评分标准:指出错误得1分,改错2分(程序功能上等价也行))
标记行5错误,因为在类外不能直接访问对象的受保护的成员。改正:
i = d[0].GetC();
i += b.c;
d[0].SetC(i);
1.(评分标准:前两个知识点各2分,后一个知识点4分)
答:类:是指具有相同的属性和操作方法,并遵守相同规则的对象的集合。
对象:是包含现实世界物体特征的抽象实体,每个对象有内部的属性和操作方法。
主要区别:
面向对象的程序设计:它的整个程序由一系列相互作用的对象构成,对象之间的交互通过发送消息来实现,对象通过响应消息来实现程序的功能。编程时可以不知道对象的内部实现细节。
Win Begin
Win
OpenWin
But
OpenWin
3.程序3(10分,评分标准:每对一个得1分)
答:程序运行结果为:

C语言程序设计2007~2008学年第二学期期末考试试卷(A)

C语言程序设计2007~2008学年第二学期期末考试试卷(A)
时,其数组下标的数据类型允许是

整型常量整型表达式 整型常量或整型表达式任何类型的表达式

若二维数组有列,则在前的元素个数为

、 以下叙述中不正确的是。
在中,函数中的自动变量可以赋初值,每调用一次,赋一次初值 在中,在调用函数时,实参和对应形参在类型上只需赋值兼容 在中,外部变量的隐含类别是自动存储类别 在中,函数形参可以说明为变量
、 以下程序运行后输出结果是 () () ()
大厦白蚁预防工程承包合同合同签订版
、 以下程序运行后输出结果是 ❖❖
、 以下程序运行后输出结果是
四、 程序设计题共分
得分 评阅人
某班级学生进行百米跑测试,规定成绩在秒以内(含秒)为优秀,在 秒以上至秒为达标,在秒以上为不达标,编一程序,从键盘上输入每个 人的成绩,以作为输入变量,并以小于的任何数作为终止标志,分别用变量 和统计出成绩为优秀、达标和不达标的人数。
、 以下正确的函数原型语句是。
、 循环体至少被执行一次的语句为。
循环循环循环 任一种循环
、 在下面循环语句中内层循环体语句的执行总次数为。
、 函数调用不可以。
出现在一个表达式中 出现在执行语句中 作为一个函数的实参 作为一个函数的形参
大厦白蚁预防工程承包合同合同签订版
、 将两个字符串连接起来组成一个字符串时,选用函数。
大厦白蚁预防工程承包合同合同签订版
试卷编号:卷
课程编号:课程名称:语言程序设计考试形式: 闭卷
适用班级:全校非计算机专业姓名:学号: 班级:
学院:专业: 考试日期:、、
题号 一 二 三 四 五 六 七 八 九 十 总分 累分人
题分 得分
签 名
考生注意事项:、本试卷共页,请查看试卷中是否有缺页或破损。如有立 即举手报告以便更换。

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案3.doc

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案3.doc

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案2一、单选择题(每小题2分,共10分)1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B )。

A. .javaB. .classC. .htmlD. .exe2、设x = 1 ,y = 2,z = 3,则表达式y + =z--/++ x 的值是(A )。

A. 3B. 3. 5C. 4D. 53、在Java Applet程序用户口定义的Applet子类中,一般需要重载父类的(D )方法來完成一些画图操作。

A. start()B. stop()C. init()D. paint()4、不允许作为类及类成员的访问控制符的是(C )。

A. publicB. privateC. staticD. protected5、为AB类的一个无形式参数无返回值的方法melhod书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。

A. static void method()B. public void method()C. final void method()D. abstract void method()二、填空题(每空格1分,共20分)1、开发与运行Java程序需要经过的三个主耍步骤为编辑源程序、编译生成字节码、和解释运行字节码。

2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为My Applet,则类MyApplet必须是Applet. 类的子类并且存储该源程序文件的文件名为MyApplet 。

3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器javac.exe 编译该源程序文件将产生 3 个文件名与类名相同而扩展名为.class 的字节码文件。

4、在Java的基木数据类型中,char型采用Unicode编码方案,每个Unicode码占用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用 2 字节内存空间。

面向对象程序设计期末复习题及答案

面向对象程序设计期末复习题及答案

C++面向对象程序设计复习试题类型1、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。

15题,每小题2分,共30分) [主要从作业题目中抽出来]2. 填空题。

(10题,每小题3分,共30分)3、阅读程序,写出程序运行结果。

【也称计算题】(3题,每小题5分,共15分)4、程序编制题【也称综合分析题】。

(第1、2题每题8分,第3题9分,共25分) 重点复习内容打*号是重点,打▲号是编程题出题范围* 基本概念,对象,消息,类。

面向对象系统特性,封装性,继承性,多态性。

*▲C++类的构成,类与对象,构造与析构,动态存储,类嵌套。

静态成员,对象数组,友元。

*函数重载。

运算符重载。

*引用定义与引用参数* 基类与派生类的定义。

* 基类及派生类的访问权(含派生类对基类的访问、通过派生类对象对基类的访问)和初始化。

多继承与虚基类。

*多态性与虚函数。

纯虚函数、抽象类。

*▲函数模板。

*▲使用类来定义对象并在程序中的应用题型样题填空题 1. 假定AB为一个类,则执行“AB a[10];”语句时,系统自动调用该类的构造函数的次数为_________。

答案:102.可以用p.a的形式访问派生类对象P的基类成员a,其中a是_________。

答案:公有继承的公有成员3.能作为重载函数的调用的依据是_________。

答案:参数个数、参数类型4.在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流是否结束状态的操作函数名称是_________答案:eof5.函数重载是指_________。

答案:两个或两个以上的函数取相同的函数名,但形参的个数或类型不同6.在派生类中重新定义虚函数时必须在_________ 方面与基类保持一致。

答案:参数个数阅读程序例题【计算题】1.分析以下程序的执行结果#include<iostream.h>class Sample{int x,y;public:Sample() {x=y=0;}Sample(int a,int b) {x=a;y=b;}~Sample(){if(x==y)cout<<“x=y”<<endl;elsecout<<“x!=y”<<endl;}void disp(){cout<<“x=”<<x<<“,y”=<<y<<endl;}};void main(){Sample s1,s2(2,3);s1.disp();s2.disp();}解:x=0,y=0x=2,y=3x!=yx=y2.分析以下程序的执行结果#include<iostream.h>int add(int x,int y){return x+y;}int add(int x,int y,int z){return x+y+z;}void main(){int a=4,b=6,c=10;cout<<add(a,b)<<,<<add(a,b,c)<<endl; }解:10,20 3.分析以下程序执行结果#include<iostream.h>int add(int x,int y){return x+y;}double add(double x,double y){return x+y;}void main(){int a=4,b=6;double c=2.6,d=7.4;cout<<add(a,b)<<","<<add(c,d)<<endl; }解:10,104.分析以下程序执行的结果#include<iostream.h>class Sample{int x,y;public:Sample(){x=y=0;}Sample(int a,int b){x=a;y=b;}void disp(){cout<<"x="<<x<<",y="<<y<<endl;}};void main(){Sample s1,s2(1,2),s3(10,20);Sample *pa[3]={&s1,&s2,&s3};for(int i=0;i<3;i++)pa[i]->disp();}解:x=0,y=0x=1,y=2x=10,y=20 5. 分析以下程序的执行结果:#include<iostream.h>class base{int n;public:base(){};base (int a){cout << "constructing base class" << endl; n=a;cout << "n= "<< n << endl;}~base() { cout << "destructing base class" << endl; }};class subs : public base{int m;public:subs(int a, int b) : base(a){cout << "constructing sub class "<< endl; m=b;cout << "m= "<< m << endl;}~subs() { cout << "destructing sub class "<< endl; }};void main (){subs s(1,2);}解:constructing base classn= 1constructing sub classm= 2destructing sub classdestructing base class6.分析以下程序的执行结果:#include <iostream.h>class Sample{protected:int x;public:Sample() { x=0; }Sample(int val) { x=val; }void operator++() { x++; }};class Derived:public Sample{int y;public:Derived():Sample(){ y=0; }Derived(int val1,int val2):Sample(val1){ y=val2; }void operator--(){ x--;y--;}void disp(){cout<<"x="<< x << ",y=" << y << endl; }};void main (){Derived d(3,5);d.disp();d++;d.disp ();d--;d--;d.disp();}解:x=3,y=5x=4,y=5x=2,y=37 分析以下程序执行结果:#include <iostream.h>class A{public:A(char *s) { cout << s << endl; }~A() {}};class B:public A {public:B(char *sl,char *s2) :A(sl){cout << s2 << endl;}};class C:public A{public:C(char *sl,char *s2) :A(sl){cout << s2 << endl;}};class D:public B,public C{public:D(char *sl,char *s2,char *s3,char *s4) :B(sl,s2),C(sl,s3){cout << s4 << endl;}};void main (){D d("class A","class B","class C","class D");}解:class Aclass Bclass Aclass Cclass D 补充例题1.分析以下程序的执行结果#include<iostream.h>template <class T>T max(T x,T y){ return (x>y?x:y); }void main(){ cout<<max(2,5)<<“,”<<max(3.5,2.8)<<endl; }解答:5,3.5 2.分析以下程序的执行结果#include<iostream.h>void main(){int a[]={10,20,30,40},*pa=a;int *&pb=pa;pb++;cout<<*pa<<endl;}解答:输出为:20 3.分析以下程序的执行结果#include<iostream.h>template <class T>T abs(T x){ return (x>0?x:-x); }void main(){ cout<<abs(-3)<<“,”<<abs(-2.6)<<endl; }解答:输出为:3,2.64.分析以下程序的执行结果#include<iostream.h>class Sample{char c1,c2;public:Sample(char a){c2=(c1=a)-32;}void disp(){ cout<<c1<<“转换为”<<c2<<endl; } };void main(){Sample a('a'),b('b');a.disp();b.disp();}解答:a转换为Ab转换为B 5.分析以下程序的执行结果#include<iostream.h>void main(){int a;int &b=a; // 变量引用b=10;cout<<“a=”<<a<<endl;} 解答:输出为:a=10 6.分析以下程序的执行结果#include<iostream.h>class Sample{int x;public:Sample(){};Sample(int a){x=a;}Sample(Sample &a){x=a.x++ +10;}void disp(){cout<<“x=”<<x<<endl; }};void main(){ Sample s1(2),s2(s1);s1.disp();s2.disp();}解答:x=3 // ++运算的结果x=12 // 2+107.分析以下程序的执行结果#include<iostream.h>class Sample{int x;public:Sample(){};Sample(int a){x=a;}Sample(Sample &a){x=a.x+1;}void disp(){cout<<“x=”<<x<<endl; } };void main(){ Sample s1(2),s2(s1);s2.disp();}解答:输出为:x=3。

2008级C 面向对象程序设计试题A 计算机学院2009年冬天

2008级C  面向对象程序设计试题A 计算机学院2009年冬天
数据成员同名。 4. 在 public 或 protected 继承方式下,派生类对象的地址均可安全地赋给一个指向基类类型的
指针型变量。 5. 若有语句 A*const p=new A; 那么通过指针 p 只能访问类 A 的常成员函数或静态成员函数。 6. 在基类的成员函数都是虚函数的情况下,该基类也称虚基类。 7. 将一个能够正常执行的程序中所有形如 void f(A&)的函数都改成 void f(const A&)形式,那
7. 下列关于单继承的说法,不正确的是:
(A) 基类的析构函数是虚的,那么派生类的析构函数也一定是虚的
(B) 实例化派生类对象,总会调用到基类的某个构造函数
(C) 无论采用何种继承方式,创建派生类对象时,总是先初始化基类数据成员,再初始化
派生类数据成员
(D) 若要在 main 函数中创建派生类对象,那么派生类的析构函数必须是公有的,基类析构
(A) a
(B) 类 A 中定义的类型为 A 的静态数据成员
(C) *this
(D) 函数 f 中用语句 A& b=a; 定义的量 b
5. 下列关于 C++动态内存管理的说法,正确的是:
(A) 用 new 分配的内存,系统可以自动回收
(B) 用 new 分配内存时,系统不可能产生异常
(C) 语句块 int n=10; char array[n]; 含有语法错误,但语句块 int n=10; char * array=new
1. class A{
2. class A{
5. class A {
int m_ival=0;
const A m_val;
public: A(int n) {}

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案

一、单选题1.在下列概念中,Java语言只保留了DA.运算符重载B.结构和联合C.指针D.方法重载2.下列类定义中,不正确的是BA.class x { .... } B.static class x implements y1,y2 { .... }C.public class x extends Applet { .... } D.class x extends y { .... }3.下列语句序列执行后,k 的值是Bint m=3, n=6, k=0;while( (m++) < (- - n) ) ++k;i++先把i的初值赋给表达式(i++),作为表达式(i++)的值,然后i自增1作为i的值。

如i=1,则表达式(i++)的值等于1,而i的值变为2。

++ii先自增1,再把自增后的值赋给表达式(++i)。

如i=1,则表达式(++i)的值等于2,i的值也为2,A.0 B.1 C.2 D.34.设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是AA.a[0] = 7; B.i = i + 2 C.i++ - --j; D.a(0) = 66;5.Java语言的类间的继承关系是BA.多重的B.单重的C.线程的D.不能继承6.下列语句序列执行后,k 的值是Cint i=10, j=18, k=30;switch( j - i ) {case 8 : k++;case 9 : k+=2;case 10: k+=3;default : k/=j;}A.31 B.3 C.2 D.337.设有定义float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是CA.x > y || x > z B.z > ( y + x ) C.x != y D.x < y & ! ( x < z )8.下列修饰符中,定义类头时能使用的修饰符是CA.private B.static C.abstract D.protected9.设i、j、k为类x中定义的int型变量名,下列类x的构造函数中不正确的是BA.x( int m){ ... } B.void x( int m){ ... }C.x( int m, int n){ ... } D.x( int h,int m,int n){ ... }10.下列对封装性的描述中,错误的是 DA.封装体包含了属性和行为B.封装使得抽象的数据类型提高了可重用性C.被封装的某些信息在封装体外是不可见的D.封装体中的属性和行为的访问权限是相同的11.下列关于包的描述中,错误的是BA.包是若干个类的集合B.包是一种特殊的类型C.包是使用package语句创建的D.包有有名包和无名包两种12.下列关于Applet程序的描述中,错误的是 CA.Applet程序的主类必须是Applet类得子类B.Applet不是完整的独立程序C.Applet程序的主类中应有一个main()方法D.Applet的字节码文件必须嵌套在一个HTML文件中13.下列界面元素中,不是容器的是CA.Dialog B.Frame C.List D.Panel14.下列关于异常处理的描述中,错误的是DA.程序运行时异常由Java虚拟机自动进行处理B.使用try-catch-finally语句捕获异常C.使用throw语句抛出异常D.捕获到的异常只能在当前方法中处理,不能在其他方法中处理15.以下方法不属于迭代器(Iterator)接口所定义的方法的是DA.hasNext()B.next()C.remove()D.nextElement()16.主线程属于(C )A.守护线程B.Thread线程C.用户线程D.Runnable线程二、填空题1.三目运算符的3个操作数中,第一个操作数的类型必须是逻辑型的。

面向对象程序设计(JAVA)期末考试试卷(A卷)

面向对象程序设计(JAVA)期末考试试卷(A卷)

5.import
java.io.* ; public class Reverse { public static void main(String args[ ]) { int i , n =10 ,sum=0; int a[ ] = new int[10]; for ( i = 0 ; i < n ; i ++ ) try { BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); a[i] = Integer.parseInt(br.readLine( )); // 输入一个整数 } catch ( IOException e ) { } ; for ( i = n-1 ; i >= 0 ; i ―― ) sum=sum+I; System.out.print(sum); } } 程序的功能是:
} 程序的输出结果为:__
_
2. abstract class A{
abstract void show(); abstract void show(int i); } Class B extends A{ int x; void show(){ System.out.print("x="+x++); } void show(int i){ x=++i; System.out.println("x="+x++); } } Class AbstractDemo{ public static void main(String[] args) {B b=new B(); b.show(); b.show(10); } } 程序的输出结果是:

面向对象程序设计复习题(附参考答案)

面向对象程序设计复习题(附参考答案)

【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】机器语言中的指令编码为()编码。

[A.]二进制[B.1符号[c.1十进制[D.]数字【答案】A【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】JaVa语言的主要特点不包括()。

[A.]面向对象[B.]自动垃圾回收[CJ处理文件[D.]可移植性【答案】C【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】Java开发工具包简称为()。

[A.]JKD[B.]JRK[C.]JDK[D.]JRE【答案】C【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】具有相同属性和服务的一组对象的模板称为()。

1B.]类[c.1代码[D.]概念【答案】B【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】类是对具有共同属性和行为的对象的抽象描述,每个对象称为该类的一个()。

[A.]产品[B.1元素[c1成分[D.]实例【答案】D【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】Java是一门()语言。

[A.]机器[B.]汇编[C.)面向过程的高级[D.]面向对象的高级【答案】D【知识点】01106.1.1.1【解析】无【题目】【题型:单选题】【难度:中】【考核能力:理解】【漏选得分:是】【自动判分:是】【应用类别:终考】【特殊标签:】使用JDK编译JaVa程序时使用的命令是()。

2008年C++期末试卷-A卷试题及答案

2008年C++期末试卷-A卷试题及答案

院(系):专业:年级:学生姓名:学号:-------------------------------------------------密----------------------------------封-----------------------------线---------------------------------------------------------第 1 页(共 3 页)------------------------------------------------- 密 ---------------------------------- 封 ----------------------------- 线 ---------------------------------------------------------第 2 页共 3 页------------------------------------------------- 密 ---------------------------------- 封 ----------------------------- 线 ---------------------------------------------------------第 3 页(共 3 页)2007–2008学年第二学期期末考试试卷(A卷)课程名称: 面向对象程序设计课程编号:任课教师:一、单项选择题:(共20题,每小题2分,共40分)1. B 2. C 3. C 4. A 5. A 6. B 7. B 8. C 9. B 10. D 11. C 12. D 13. D 14. B 15. C 16. D 17. B 18. A 19. A 20. A二、填空题:(共10题,每小题1分,共10分)21.true ,false 1 ,0 22.内联函数,编译,执行时间23.this 24.new25.继承26.私有,私有,不可访问27.虚函数28.基类指针或引用三、程序改错题:(共2题,每题5分,共10分)29.【答】【答】错误处标号如下:①///************************************************* 程序文件名: p1_2.cpp **************************************************/#include <iostream>;④using std::endl;⑤void main( )⑥float num1, num2, num3; //定义三个数cin ⑦<< num1 << num2<<num3;cout >> ⑧“The average is:”⑨>> setw(30) ⑩>>(num1+num2+num3)/3>> endl;}①行注释符号//将块注释的头/*注释掉了,使得块注释的尾*/没有相应的头与之匹配;②关键字Using中包含了大写字母,应改为using;③using namespace std不是预处理指令,要以分号结尾;④#include <iostream> 是预处理指令,不能以分号结尾,而且要作为程序的开头行⑤使用了using namespace std,就不必单独使用std::endl;⑥void main() 后少了{;⑦cin应与提取操作符>>连用;⑧cout应与插入操作符<<连用;⑨“The average is:”为全角引号,应改为英文;⑩使用setw(30) 应包含头文件iomanip30.【答】①int a(0),b(0); //错误,数据成员的初始化必须通过构造函数实现改正:int a,b;②A x(2,3), y(4); //错误,对象y的初始化与已定义的构造函数参数表不匹配,可重载一个构造函数对对象y进行初始化。

软件工程08级《Java程序设计》A卷参考答案

软件工程08级《Java程序设计》A卷参考答案

(2 分)
(2 分)
3. (8 分) package org.jdbc; import java.sql.*; public class DecideDegree { public static void main(String[] args) { ResultSet rs = null; Statement stmt = null; Connection conn = null; int thisID; float thisMath, thisEnglish, sum; char thisDegree; try { /* 加载并注册 MySQL 的 JDBC 驱动 Class.forName("com.mysql.jdbc.Driver"); /* 建立到 MySQL 数据库的连接 */ conn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/xscj", "root", "123456"); /* 访问数据库,执行 SQL 语句 */ stmt = conn.createStatement(); /*根据数学和英语成绩情况确定综合等级*/ rs = stmt.executeQuery("select * from student"); while(rs.next()) { thisID=rs.getInt("ID"); thisMath=rs.getFloat("Math"); thisEnglish=rs.getFloat("English"); sum= thisMath+thisEnglish; if (thisMath>=60) and (thisEnglish>=60) if sum>=180 thisDegree=’A’; else if sum>=160 thisDegree=’B’; else if sum>=140 thisDegree=’C’; else if sum>=120 thisDegree=’D’; else thisDegree=’E’; else thisDegree=’E’; (1 分) } } } (3 分) } } } catch (SQLException e) { e.printStackTrace(); } if(conn != null) { conn.close(); conn = null; // 关闭 Connection 对象 */ (2 分) } if(stmt != null) { stmt.close(); stmt = null; // 关闭 Statement 对象 } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { try { if(rs != null) { rs.close(); rs = null; // 关闭 ResultSet 对象 (1 分) (1 分)

《面向对象程序设计——java》期末考试试题2008A卷

《面向对象程序设计——java》期末考试试题2008A卷

武汉大学计算机学院2008—2009学年度第一学期期末考试《J AVA程序设计》试卷 A专业:___________ 学号:____________ 姓名:_________ 总分:_________一、单项选择题(10小题20分)1、编译和运行下列代码后结果是:( )public class Test {static int total = 10;public static void main (String args [ ] ) {new Test();}public Test () {System.out.println("In test");System.out.println(this);int temp = this.total;if (temp > 5) System.out.println(temp);}}A. 编译器报第2行有错B. 编译器报第9行有错C. 在标准输出上打印的内容中有数字10D. 通过编译,但是产生运行时错误2、下列类分别在不同的文件中定义:( )class Vehicle {public void drive() {System.out.println("Vehicle: drive");}}class Car extends Vehicle {public void drive() {System.out.println("Car: drive");}}public class Test {public static void main (String args []) {Vehicle v; Car c;v = new Vehicle(); c = new Car();v.drive(); c.drive();v = c; v.drive();}}编译和执行类Test后,结果是:()。

A. 在语句v= c;处产生编译时错误B. 在语句v= c;处产生运行时错误C. 输出:Vehicle: driveD. 输出:Vehicle: driveCar: drive Car: driveCar: drive Vehicle: drive3、下列代码中的public void add(int a)方法在add(5)形式调用下产生什么输出?()public class Test {public void add(int a) {loop: for (int i = 1; i < 3; i++) {for (int j = 1; j < 3; j++) {if (a == 5) break loop;System.out.println(i * j);}}}}A. 运行时错误B. 抛出ArrayIndexOutOfBoundsException异常C. 输出:1, 2, 2, 4D. 没有输出4、在JAVA中,类Animal中的方法printA( )定义如下:public void printA( ){int a=10; int result=10%3;System.out.println(result);}在类Dog中方法printA( )定义如下:public void printA( ){int a=10;Systme.out.println(a/3);}Dog类的定义如下:Class Dog extends Animal{…}若有语句:Animal animal=new Dog( );animal.printA( );则这段代码输出为()。

2009年_2008级_面向对象程序设计_考试试题_A

2009年_2008级_面向对象程序设计_考试试题_A

2009-2010学年第1学期期末考试试题(A )卷课程名称 面向对象程序设计 任课教师签名 张俊 吕品 出题教师签名 吕涛 审题教师签名 王邯 考试方式(闭)卷 适用专业 08计算、08计科、08网工 考试时间 ( 120 )分钟注:一、二题答案写在各题前面的表格中,三、四题答案标明题号写在答题纸上。

一.判断题(共10分,每题1分)1. 根据定义int n = 1, &r = n;,则表达式++r, n--的值为1。

2. 在构造类A 的数组A* a[2]时会调用构造函数2次。

3. 执行程序段T a; T b = a;时,需要调用类T 的赋值运算符函数。

4. 析构函数可以声明为类的const 成员函数。

5. 在输出T 类的对象t 时cout << t ,需要把运算符<<定义为类T 的成员函数。

6. 计算函数对象表达式greater<char>()('a', 'b')后,结果为false 。

7. 类B 从类A 公有继承,则程序段A a; B &b = a;会引发编译错误。

8. 类A 中定义有纯虚函数,则函数原型void f(A a);是错误的。

9. 仅设置字宽为4,填充字符为'#',则表达式cout<<-10的输出结果为-#10。

10. istream 类成员函数get 既可以输入单个字符,也可以输入整行字符串。

二.单选题(共30分,每题2分)1. 有函数f 定义如下:int f(int a = 1, int b = 2, int c = 3) { return a + b + c; }下列说法中错误的是()。

A .函数调用f()的结果为6。

B .函数调用f(f(f()))的结果为16。

C .函数调用f(f(), f())的结果为15D .函数调用f(f(), f(f()))的结果为21。

面向对象程序设计》期末试卷及标准答案

面向对象程序设计》期末试卷及标准答案

《面向对象程序设计C++》期末考试一试卷(A)班级:姓名:学号:分数:题号一二三四总分得分试卷说明:本套试题共四个大题,所有题目都答在答题纸上,写在其余地方均无效。

(答题纸在本套试卷的第10页上)一、选择题(每题2分,共40分)1、C++是(C )。

面向对象的程序设计语言面向过程的程序设计语言既支持面向对象的程序设计又支持面向过程的程序设计的混淆型语言非结构化的程序设计语言2、面向对象程序设计思想的主要特点中不包含( D )。

A.封装性B.多态性C.继承性D.功能分解,逐渐求精3、若定义:stringst r;当语句cin>>str;履行时,从键盘输入:MicrosoftVisualStudio6.0!所得的结果是str=(B)。

A.MicrosoftVisualStudio6.0!B.MicrosoftC.MicrosoftVisualD.MicrosoftVisualStudio6.04、考虑下边的函数原型申明:voidtestDefaulParam(inta,intb=7,charz='* ');下边函数调用中,不合法的是(C )。

A.testDefaulParam(5);B.testDefaulParam(5,8);C.testDefaulParam(5,'#');D.testDefaulParam(0,0,'*');5、以下语句中,将函数intsum(intx,inty)正确重载的是( C )。

A.floatsum(intx,inty);B.intsum(inta,intb);C.floatsum(floatx,floaty);D.doublesum(inty,intx);6、以下表示引用的方法中,(A)是正确的。

已知:inta=1000;A.int&x=a; B.char&y; C.int&z=1000; D.float &t=&a;7、在一个函数中,要求经过函数来实现一种不太复杂的功能,而且要求加快履行速度,采纳(A )。

C++2010年08级试卷(A卷)答案

C++2010年08级试卷(A卷)答案

西安建筑科技大学考试试卷(A)答案与评分标准一、填空题(每小题2分,共20分)1. 类是一组具有共同的特征和_相同__行为特征的对象的抽象。

2. 若要在程序文件中进行标准输入输出操作,则必须在开始的#include命令中使用__ stdio.h 或 iostream.h _头文件。

3. 用class作关键字进行类声明,默认的访问属性是_ private __。

4. 函数名重载是指同一作用域内的多个函数使用相同的函数名,这些同名函数要从____参数个数和参数类型____进行区分。

5. 构造函数的作用是_____初始化对象_ 。

6. 多重继承指一个派生类可以有___多个基类___ 。

7. 保护继承下,基类中所有公有成员在派生类中的访问属性是__ protected _ 。

8. 假定要访问一个对象指针p所指对象中的b成员,则表示方法_ p->b ___。

9. 若需要把一个函数“void F();”定义为一个类AB的友元函数,则应在类AB 的定义中加入一条语句:__ friend void F() 。

10. Static成员函数与普通成员函数的区别是____ static成员函数不是通过对象进行引用, 而是通过类名限定进行引用_________。

评分标准:每小题2分,不给部分分。

二、读程题,写出程序的运行结果。

(每小题6分,共30分)1、#include <iostream.h>void main( ){ int a,b,c,d(5);c=2,c+=10;a =b=10;a* = 2;b / = 2;c % = 2;cout<<a<<","<<b<<","<<c<<endl;}运行结果:20, 5, 02、#include <iostream.h>void main(){ int x=3,y=3;switch(x%2){ case 1: switch (y){ case 0:cout<<"AAAA\t";case 1:cout<<"BBBB\t"; break;default: cout<<"CCCC\t";}case 2:cout<<"Thanks\n";}}运行结果:CCCC Thanks3、#include<iostream.h>void swap(int x,int &y);void main( ){ int a(10),b;b=a/5;cout<<"a="<<a<<","<<"b="<<b<<endl;swap(a,b);cout<<"a="<<a<<","<<"b="<<b<<endl;}void swap(int x,int &y){ int temp=x;x=y;y=temp;}运行结果:a=10,b=2a=10,b=104、#include <iostream.h>class A{ public:A( );A(int i,int j);~A() {cout<<"Destructor.\n";}void print( );private:int a,b;};A::A(){ a=5;b=10;cout<<"Default constructor.\n"; }1A::A(int i,int j){ a=i,b=j;cout<<"Constructor.\n";} void A::print( ){cout<<"a="<<a<<",b="<<b<<endl;} void main( ){ A obj1,obj2(15,18);obj1.print();obj2.print( );}运行结果:Default constructor.Default constructor.a=5,b=10a=15,b=18Destructor.Destructor.5.#include <iostream.h>class A{public:A( ) {cout<<1<<endl; }virtual ~A( ) {cout<<2<<endl;}virtual int Add(int n){return 0;}};class B:public A{public:B(int n):num(n) { }virtual ~B( ) {}virtual int Add(int n){ num+=n;return num; }private:int num;};class C:public A {public: C(A& obj,int n):a(obj),num(n){ cout<<3<<endl; }virtual ~C( ){ cout<<4<<endl; }virtual int Add(int n){ return a.Add(n+num); }private:A& a;2int num;};void main ( ){B b(100);C c1(b,1), c2(c1,2);cout<<c2.Add(50)<<endl;}运行结果:1131315342422评分标准:每小题6分,可以给部分分。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

北京林业大学2008--2009学年第1学期考试试卷课程名称:面向对象程序设计语言A(A)课程所在学院:信息学院考试班级学号姓名成绩试卷说明:1.本次考试为闭卷考试。

本试卷共计11页,共4大部分,请勿漏答;2.考试时间为120分钟,请掌握好答题时间;3.答题之前,请将试卷和答题纸上的考试班级、学号、姓名填写清楚;4.本试卷所有试题答案写在试卷上;5.答题完毕,请将试卷和答题纸正面向外对叠交回,不得带出考场;6.考试中心提示:请你遵守考场纪律,参与公平竞争!一.单项选择题(每小题2分,共40分)说明:每小题列出一组答案,分别标识为A~D,在四个选项中,只有一个是符合题目要求的,请将其代码填在下列表格的题号对应的空白内。

错选或未选均[1] 在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()(A) main (B) MAIN(C) name (D) function[2] 设x和y均为bool量,则x&&y为真的条件是()(A) 它们均为真(B) 其中一个为真(C) 它们均为假(D) 其中一个为假[3] 下面的哪个保留字不能作为函数的返回类型?()(A) void (B) int(C) new (D) long[4] 假定a为一个整型数组名,则元素a[4]的字节地址为()(A) a+4 (B) a+8(C) a+16 (D) a+32[5] 假定C为一个类,则执行“C a1(20) , a2[5] , * pa[6] ;”语句时,自动调用该类构造函数的次数为()(A) 31 (B) 6(C) 2 (D) 12[6] 假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为()(A) AB operator+(AB & a , AB & b)(B) AB operator+(AB & a)(C) operator+(AB a) (D) AB & operator+( )[7] 一个函数功能不太复杂,但要求被频繁调用,选用()(A) 内联函数(B) 重载函数(C) 递归函数(D) 嵌套函数[8] 在C++中,关于下列设置参数默认值的描述中,正确的是()(A) 程序中有函数重载,就不能设置参数默认值(B) 设置参数默认值,只能在函数定义时进行(C) 设置参数默认值时,应该是先设置右边的再设置左边的(D) 设置参数默认值时,应该全部参数都设置[9] 已知:int a, *pa=&a; 输出指针pa值的十进制表示的方法是()(A) cout<<pa (B) cout<<*pa;(C) cout<<&pa (D) cout<<long(pa);[10] 类的析构函数是在什么时间被自动调用的?()(A) 类创建时(B) 创建对象时(C) 删除对象时(D) 不自动调用[11] 若派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的()(A) 私有成员(B) 公有成员(C) 保护成员(D) 保护成员或私有成员[12] 若类Y是类X的友元类,则下列哪种访问关系是正确的()(A) 类Y的成员不能访问类X的私有成员(B) 类Y的成员可以访问类X的私有成员(C) 类X的成员可以访问类Y的私有成员(D) 只有类X的公共成员才能访问类Y的私有成员(A) 有参构造函数(B) 无参构造函数(C) 拷贝构造函数(D) 赋值重载函数[14] 下列哪一个不是类的特性()(A) 多态性(B) 继承性(C) 封装性(D) 虚拟性[15] 下列有关模板的描述那些是错误的()(A) 模板把数据类型作为一个设计参数,称为参数化程序设计。

(B) 模板参数除模板类型参数外,还有非类型参数。

(C) 类模板与模板类是同一概念。

(D) 使用时,模板参数与函数参数相同,是按位置而不是名称对应的。

[16] 关于多态,下面那些说法是正确的()(A) 多态分静态的(运行时)和动态的(编译时)。

(B) 运行时的多态与类的层次结构无关。

(C) 在基类定义了虚函数后,在派生类中重新定义时必须加关键字virtual。

(D) 仅使用虚函数并不能实现运行时的多态性,还必须采用指针或引用来调用才能真正实现运行时的多态性。

[17] 下列关于静态数据成员的描述中正确的是()(A) 静态数据成员是类的所有对象所共有的(B) 静态数据成员要在构造函数内初始化(C) 类的每个对象有自己独立的静态数据成员(D) 静态数据成员不能通过类的对象调用[18] 下列哪一个描述是关于引用调用的()(A) 形参是指针,实参是地址值(B) 形参是引用,实参是变量(C) 形参和实参都是变量(D) 形参和实参都是数组名[19] 已知类Myst有一个只需要一个double型参数的构造函数,且将运算符“-”重载为友元函数。

要使语句序列:Myst x(3.2),y(5.5),z(0.0);z=8.9-y;y=x-6.3;能够正常运行,运算符函数operator -应该在类中声明为()(A) friend Myst operator- (Myst&,Myst&);(B) friend Myst operator- (Myst,Myst);(C) friend Myst operator- (Myst,Myst&);(D) friend Myst operator- (Myst&,Myst);[20] 语句:for(int x=0,y=0;!x && y<=5; y++); 执行循环的次数是()(A) 无数(B) 6(C) 4 (D) 5二.判断题(每小题1分,共10分)说明:请判断下列语句是否正确,如果正确请在下列的表格题号对应的空白内打上√( )[1]已知:int a=5,b=10;表达式++a+b++有二义性。

( )[2]如果函数值的类型与返回值类型不一致,以函数值类型为准。

( )[3]C++中数组元素的下标是从0开始,它们连续存储在内存单元中。

( )[4]在传值调用中,要求实参和形参的类型完全一致并且个数相等。

( )[5]语句int a=20, &b = a, *p = &a;中,b的值和*p的值是相等的。

( )[6]数组赋初值时,初始值表中的数据项的数目可以大于或等于数组元素的个数。

( )[7]在C++中,声明函数时用函数原型。

( )[8]定义一个对象时,系统只为该对象的数据成员开辟内存空间,而成员函数是同类对象共享的。

( )[9]静态成员是指静态对象的成员。

( )[10]模板类的成员函数若在类外实现,则必须是模板函数。

三.写出程序执行结果(每小题5分,共30分)阅读以下程序,并写出程序运行结果。

[1]#include<iostream.h>unsigned fun (unsigned m){unsigned L=2;do{L*=m%10;m/=10;} while(m);return (L);}int main(){unsigned n =35;cout<<fun(n)<<endl;return 0;}[2]#include<iostream.h>int funa(int a,int b){return(a + b);}int funb(int a,int b){return(a - b);}int sub(int(*f)(int ,int),int x,int y) {return ((*f)(x,y));}int main(){int x,(*p)(int,int);p=funb;x=sub(funa,8,3);x+=sub(p,9,3);cout<<"x="<<x<<'\n';return 0;}[3]#include<iostream.h>class base{public:int b;base(){b=0;}};class divide1:virtual public base{int b1;public:divide1(){b=10;}};class divide2:virtual public base{int b2;public:divide2(){b=20;}};class subdivide:public divide1,public divide2{ int d;};int main(){subdivide d;int i=d.b;cout<<i<<endl;return 0;}[4]#include<iostream.h>class Counter{int v;public:Counter(){ v=0; }Counter& preAddOne();Counter postAddOne();void print(){ cout<<v<<endl; }};Counter& Counter::preAddOne(){v++;return *this;}Counter Counter::postAddOne(){Counter temp;temp.v = v++;return temp;int main(){Counter c;for(int i=0; i<8; i++)c.postAddOne().postAddOne();c.print();for(int j=0; j<8; j++)c.preAddOne().preAddOne();c.print();return 0;}[5]#include<iostream.h>class complex{public:complex(double ,double );complex(complex&);complex();complex operator +(complex&);complex& operator =(complex&);void display();protected:double real;double image;};complex::complex(double x,double y){ real=x,image=y;}complex::complex(complex& x){cout<<"Runing copy constructor\n";real=x.real;image=x.image;}complex::complex(){real=image=0.0;}complex complex::operator +(complex& x){return complex(real+x.real,image+x.image);}complex& complex::operator =(complex&x){cout<<"Runing assign operator\n";real+=x.real;image+=x.image;return *this;}void complex::display()cout<<real<<"+"<<image<<"i"<<endl;}int main(){complex c1(2,5);complex c2(c1);complex c3;c3=c1+c2;c3.display();return 0;}[6]#include<iostream.h>template<class T>class Stack{int top;T *elements;int maxSize;public:Stack(int=30);~Stack(){delete[] elements;}void Push(const T &data);T Pop();};template<class T> Stack<T>::Stack(int maxs){maxSize=maxs;top=-1;elements=new T [maxSize];}template<class T> void Stack<T>::Push(const T &data){ elements[++top]=data;}template<class T> T Stack<T>::Pop(){return elements[top--];}int main(){int i;char a[5]={'k','c','a','t','s'};Stack<char> cstack;for(i=0;i<5;i++) cstack.Push(a[i]);for(i=0;i<5;i++){cout<<cstack.Pop();}return 0;}四.综合题(每小题10分,共20分)1、已知4≤i≤23,13≤j<33,56≤k≤73编一程序求出满足方程(i十j)×k=2346的全部整数组解。

相关文档
最新文档