ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:26.44KB ,
资源ID:11861699      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11861699.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大学计算机应用基础面向对象部分复习题.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大学计算机应用基础面向对象部分复习题.docx

1、大学计算机应用基础面向对象部分复习题大学计算机应用基础(面向对象部分)复习题一、选择题4关于成员函数,以下叙述中不正确的是_A_ A. 成员函数一定是内联函数 B. 成员函数可以重载 C. 成员函数的参数可以设置默认值 D. 成员函数可以是另一个类的友元函数 5下列关于析构函数说法正确的是_D_。A. 析构函数可以有参数。 B. 析构函数可以重载。C. 析构函数一定被继承。 D. 析构函数无返回值。6下列对友元的描述中,正确的是_D_。A. 友元可以在类外声明和定义 B. 友元降低了程序的运行效率C. 友元不能访问类中的保护成员 D. 友元破坏了类的封装性7下面对静态成员的描述中,错误的是_C

2、_。A. 静态成员的提出是为了解决数据共享问题B. 静态数据成员的初始化在类体外进行C. 类的不同对象有不同的静态数据成员值D. 静态成员函数可以直接访问类中的静态数据成员8下列对常量的定义中,错误的是C_。A. int const size=10; B. char * const p=Good Luck;C. void const print(); D. const MyClass obj(10,10);9若有如下函数声明:void Fun(int x);,则下列_B_能与该函数进行重载。A. void Fun(int y); B. void Fun(int x,int y=1);C. in

3、t Fun(int x); D. void Fun(int) const;10为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择_A_。A. 内联函数 B. 重载函数 C. 递归函数 D. 函数模板11派生类的对象对它的基类成员中什么是可访问的(A,C)。A. 公有继承的公有成员 B. 公有继承的私有成员C. 公有继承的保护成员 D. 私有继承的公有成员12、_D_不是构造函数的特征。 A. 构造函数的函数名与本类类名相同 B. 构造函数可以重载 C. 构造函数可以设置缺省形参值 D. 构造函数必须指明返回类型13、下列函数中,_A_不是类的成员函数。 A. 友元函数 B. 拷

4、贝构造函数 C. 析构函数 D. 构造函数14、若有如下函数声明:void Fun(int x);,则下列_B_能与该函数进行重载。A. void Fun(int y); B. void Fun(int x,int y=1);C. int Fun(int x); D. void Fun(int) const;15、若派生类的继承方式为私有,则派生类自有的成员函数不能对基类的_B_直接访问。A. 公有成员 B、私有成员 C、保护成员 D、全部成员;16、下列对常量的定义中,错误的是_C_。A. int const size=10; B. char * const p=Good Luck;C. v

5、oid const print(); D. const MyClass obj(10,10);17、设置虚基类的目的是_B_。A. 简化程序 B. 消除二义性C. 实现多态 D. 减少目标代码18、已知类A,并static int a 为其公有成员,下面初始化方法正确的是_D_。A. int a=0; B. a=0;C. A():a(0); D. int A:a=0; 19、下列运算符中,不能重载的运算符是_A_。A. : B. C. & . 20、在建立派生类对象时,构造函数的执行方式为:C A. 先执行派生类构造函数后执行基类构造函数B. 只执行派生类构造函数C. 先执行基类构造函数后执行

6、派生类构造函数D. 仅执行基类构造函数21、为了提高程序的运行速度,可将不太复杂的功能用_A_函数实现。A. 内联函数 B. 重载函数 C. 递归函数 D. 函数模板22、派生类中,重新定义基类的虚函数时,虚函数的_D_必须保持一致。 A. 参数个数 B. 参数类型 C. 返回值 D. 参数个数、参数类型和返回值23. 当派生类中有和基类一样名字的成员时,一般来说 _B_。 A.将产生二义性B.派生类的同名成员将覆盖基类的成员C.是不能允许的D.基类的同名成员将覆盖派生类的成员24. 如果是类B在类A的基础上构造,那么称_B_。 A.类A为基类或派生类,类B为子类或父类 B.类A为基类、父类,

7、类B为派生类或子类C.类A为派生类,类B为基类 D.类A为派生类或子类,类B为基类、父类25. 多继承派生类构造函数构造对象时,_C_最先被调用。A. 虚函数的构造函数 B. 派生类自己的构造函数C. 非虚基类的构造函数 D. 派生类中子对象类的构造函数二、 程序填空1、把一串字符中的小写字母转换为对应的大写字母。#include char fun(char c) if(c=a&c=z) _c=c+32_; return c;main() char c; c=getchar(); while(c!=n) c=_fun(c)_; putchar(c); c=_getchar(c)_; 2、友元应

8、用#include iostream.hclass studentpublic: int No; char *Name; _student()_; student(); _friend_ void f_age(int ag, student &p);private: int age;student:student(int n,char *str) No=n; Name=str; age=18;student:student () cout学号Noendl; cout姓名Nameendl; cout年龄ageendl;void f_age(int ag, student &p) p.age =a

9、g; cout友元年龄p.age endl;void main() student wang(5074401,wang); f_age(30,wang);3、输出一个点#include iostream.hclass pointpublic:point(int x,int y); point() coutX,Yendl; private: int X; int Y;point:point(int x,int y) _X=x_; _Y=y_;void main() point p1(10,10); 4、求出圆的面积:#include class Point public: Point(doubl

10、e m,double n ); virtual void Area();private: double x,y;Point:Point(double m,double n ) _ x=m,y=n _void Point: Area() coutThe area is 0endl;class Circle :public Pointpublic: Circle()_; void Area();private: double r;Circle :Circle (double m,double n, double i): Point (m,n)_ r=i;void Circle : Area() d

11、ouble a=_3.14*r*r_; coutThe area of the circle is:a Area (); 5、下列程序执行后的输出结果是B0 D00 B1 D23 D B D B,请将下列程序补充完整。class Base public:Base(int i=0) x = i; coutBx ;Base() coutBx ; private:int x;class Derived : public Base int y, z;public: _ Derived (int i,int a=0,int b=0): Base(i) y=a;z=b;cout”D”yz ;_ / Con

12、structor _ Derived () cout”D” ;_ / Destructor;void main() Derived obj1; Derived obj2(1,2,3); 5、函数重载#include int f_add(_int i,int j_) return i+j; double f_add(_double i,double j_) return i+j; int f_add(int i,int j,int k) return i+f_add(_int j,int k _); void main() int a=1,b=2,c=3; double x=3.5,y=4.5;

13、 int e,f; double z; e=f_add(a,b); f=f_add(a,b,c); z=f_add(x,y); couta+b=eendl; couta+b+c=fendl; coutx+y=zendl;三、写出下列程序的运行结果1阅读程序,输入如下数据:10052,写出运行结果。#include stdio.hmain() long m,p,q,t; p=q=0; scanf(%ld,&m); do t=m%10; if(t=0) p+; else if(q=t) q=t; m/=10; while(m); printf(Count=%ld,Max=%ldn,p,q); 2、

14、阅读程序,写出运行结果#include iostream.hclass testprivate: int num; float fl;public: test( ); int getint( )return num; float getfloat( )return fl; test( );test:test( ) cout Initalizing default endl; num=1;fl=1.2;test:test( ) coutDesdtructor is activeendl;void main( ) test array2; cout array1.getint( ) array1.

15、getfloat( ) endl;3、阅读程序,写出运行结果。#include class Apublic: A()cout调用的无参构造函数endl; A(int x) a1=x;cout调用的有参构造函数endl; A(A &p) a1=p.a1;cout调用的复制构造函数endl; void add(A q) A temp; temp.a1=a1+q.a1; cout结果为: temp.a1 endl; private: int a1;main() A A1(1),A2(2); A1.add (A2);4、分析下列程序的运行结果#include class add public: vir

16、tual void sm()=0; virtual void disp() ;class add1:public add private: int m1,n1;public: add1(int a,int b):m1(a),n1(b) void sm() m1+=-n1; n1-; void disp() coutm1=m1 n1=n1sm(); p-disp();5、阅读程序,写出运行结果#include class A public: A(int i) a=i; coutConstructor A. endl; A() coutDestructor A. endl; void Print(

17、) coutaendl; private: int a; ; class B:public A public: B(int i,int j):A(i) b=j; coutConstructor B. endl; B() coutDestructor B. endl; void Print() A:Print(); coutbendl; private: int b;class C:public Bpublic: C(int i,int j,int k):B(i,j),c(k) coutConstructor C. endl; C() coutDestructor C. endl; void P

18、rint() A:Print(); B:Print();coutcendl; private: int c;void main() C c1(1,2,3); c1.Print();6、分析下列程序,写出运行结果#include class Test public: Test (double m,double n,double d):p(d) x=m; y=n; void Show(); void Show() const;private: double x, y; const double p;void Test:Show() coutx,yendl; coutp=pendl;void Tes

19、t:Show() const coutx,y constendl; coutp=p constendl;void main() Test a(8.9,2.5,3.1416); a.Show(); const Test b(2.5,8.9,3.14); b.Show();7、分析下列程序,写出运行结果#include class Sample int x,y; public: Sample() x=y=0; Sample(int a,int b) x=a;y=b; Sample() if(x=y) coutx=yendl; else coutx!=yendl; void disp() coutx

20、=x,y=yendl; ; void main() Sample s1,s2(2,3); s1.disp(); s2.disp(); 8、分析下列程序,写出运行结果#include class Point public: Point(double m,double n ); virtual void Area();private: double x,y;Point:Point(double m,double n ) x=m; y=n;void Point: Area() cout”The area is 0”endl;class Circle :public Pointpublic: Circ

21、le (double m,double n, double i); /声明构造函数 void Area();private: double r;Circle :Circle (double m,double n, double i): Point(m,n) r=i;void Circle : Area()double a=3.14*r*r;cout”The area of the circle is:”a Area (); 四、编写程序1、已知数列: 编一程序,求其前十项的和。(画出NS流程图)#includeusing namespace std;int main() double sum,

22、m,n; int i; sum=1; m=1; n=1; for(i=1;i=9;i+) n=n+2; if(i%2!=0) m=-(1/n); else m=1/n; sum+=m; cout前十项的和为:sumendl; return 0;2、编写一函数计算n!,调用该函数计算sinx的近似值,要求误差小于,其中:#include#includeusing namespace std;int jiecheng(int n) int sum=1,i; for(i=1;i=n;i+) sum=sum*i; return sum;double main() double sinx=0,x; in

23、t n,i; coutx; coutn; for(i=1;i=n;i+) sinx=pow(-1),(i-1)*pow(x,(2i-1)/jiecheng(2i-1); coutsinx=; printf(%10.4n,sinx); return 0;3、定义一复数类,利用运算符重载完成复数相加。主函数及运行结果如下:(注意:实部为real;虚部为imag,为私有数据成员)#include class Complex public: Complex() real=0; Image=0;Complex(double r,double i):real(r),imag(i)Complex opera

24、tor+(Complexb & c2); return (real+c2.real,imag+c2.imag)Void put() cout”(“real”,”imag”i)”endl; private:double raeal;double image;void main() Complex c1(1,2),c2(3,4),c3; c3=c1+c2; c3.put();4、编写一函数把字串中与某字符相同的字符删除,主函数如下:#include #include main() char *str=new char; char c; gets(str); cinc; fun(str,c); puts(str); void fun(str,c) while(str!=0) if(strcmp(str,c)=0) delete str; 5、已知三角形的三遍,在该三角形的基础上拉伸出高为H的三棱柱,编写三棱柱派生类,求三棱柱的体积。 三角形类描述如下:cl

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1