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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

c++复习.docx

1、c+复习1、#include using namespace std;class MyClass public: MyClass(int i=0)cout1;MyClass(const MyClass&x)cout2;MyClass& operator=(const MyClass&x)cout3; return*this; MyClass()cout4;int main()MyClass obj1(1),obj2(2),obj3(obj1); return 0;问输出结果:1 1 2 4 4 42、#include#includeusing namespace std;class MyStr

2、ingpublic: char str80; MyString(const char*s) strcpy(str,s); MyString&operator+=(MyString a) strcat(str,a.str); return*this; ;ostream&operator(ostream&s,const MyString&z) return s z.str; int main() MyString x(abc),y(cde); cout(x+=y)endl; return 0;问输出结果:abccde3、有类定义如下: #include iostream.hclass Type p

3、ublic:Type (int i=0);Type operator-(int);friend Type operator +(Type, Type);private:int val;若有对象定义Type cl;则下列语句序列中,错误的是 cA)Type(3)+c1; B) c1+Type(3); C) 3-c1; D) c1-3;4、#includeusing namespace std;class Bookpublic:Book(char* t=)strcpy(title,t);-virtual _char *Category()const=0;-private:char title40;

4、class Novel:public Bookpublic:Novel(char *t=):Book(t)char *Category()const return 文学 ; ;int main()Book *pb;pb=new Novel();coutCategory();return 0;5有如下程序: #include using namespace std; class Media public: void Name(); void Show(); protected: int page; ; class Book:private Media public: void Print() c

5、outpageendl; void Show() Media:Show(); / ; int main() Book Bible; Bible.Name(); / Bible.Print(); / Bible.Show(); / return 0; 编译不正确的是:(2)6、有如下程序段int i =0, j=1;int &r=i ; / r =j; /int*p=&i ; /*p=&r ; / / 将*去掉或者将&去掉其中编译正确的语句是1237、下面程序的语句1-4有误,找出不正确的语句并修改有如下程序:#includeusing namespace std;class MyClass p

6、ublic:MyClass(int x):val(x)void Set(int x) val=x; void Print() const coutval=valt; private: int val; ;Int main()const MyClass obj1(10);-MyClass obj2(20);obj1.Print(); /语句 1obj2.Print(); /语句 2obj1.Set(20); /语句 3 / 将此句删除 obj1为常量obj2.Set(30); /语句 4return 0;8、有如下程序:#include using namespace std;class Toy

7、 public: Toy(char* _n) strcpy (name,_n); count+;Toy() count-; char* GetName() return name; static int getCount() return count; 静态成员属于类private:char name10;static int count;int Toy:count=0;int main()Toy t1(Snoopy),t2(Mickey),t3(Barbie);coutt1.getCount()endl;/ = toy:getcount();return 0;/输出3 9、如果不使用多态机制

8、,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员,有如下程序,没有使用多态机制。#includeusing namespace std;class Baseint a,b;public:Base(int x ,int y) a=x; b=y;void show() couta,bendl;class Derived:public Base int c ,d;public:Derived(int x,int y,int z,int m):Base(x,y)c=z; d=m;void show() coutc,dshow();return 0;/ 输出 10 20 10.若

9、有如下类声明#include iostream.hclass MyClass public:MyClass() cout1; 执行下列语句MyClass a,b2,*p2; 以后,程序的输出结果 1 1 111、下列语句中不正确的是(AC)。A)const int a; B)const int a=10;C)const int*point=10; D)const int*point=new int(10);12、在C+中既可以用于文件输入又可以用于文件输出的流类是 AA)fstream B)ifstream C)ofstream D)iostream13、有如下程序:#includeusing

10、 namespace std;class Apublic: A()coutA; A()coutC;class B:public Apublic: B( )coutG; B( )coutT;int main() B obj; return 0;运行这个程序的输出结果是 AGTC14、有如下程序: #include using namespace std; class Boat; class Car public: Car(int i):weight(i) friend int Total(const Car &c,const Boat &b); / private: int weight; ;

11、class Boat public: Boat(int i):weight(i) friend int Total(const Car &c,const Boat &b); private: int weight; ; int Total(const Car &c,const Boat &b) / return c.weight+b.weight; int main() Car c(10); Boat b(8); coutThe total weight isTotal(c,b)endl; / return 0;15若需要为XV类重载乘法运算符,运算结果为XV类型,在将其声明为类的成员函数时,

12、下列原型声明正确的是 D A)XV operator *(XV,XV); B)XV *(XV); C)operator *(XV); D)XV operator *(XV);16有如下程序: #includeusing namespace std;class Instrumentpublic:virtual void Display()=0;class Piano:public Instrumentpublic:void Display()/*函数体程序略*/;int main() Instrument s;Instrument *p=0;/;return 0;下列叙述中正确的是 BA)语句“

13、Insturment *p=0;”编译时出错B)语句“Instrument s;”编译时出错C)类Piano中的Display函数不是虚函数D)类Instrumen类是一个虚基类17、已知类IMS中两个成员函数的声明为void listen() const;与void speak();,另有两个对象的定义为IMS obj1;与const IMS obj2;,则下列语句中,产生编译错误的是 BA)obj1.listen(); B)obj1.speak(); C)obj2.listen(); D)obj2.speak();17、若在表达式y/x中,“”是作为成员函数重载的运算符,则该表达式还可以表

14、示为CA)x.Operator/(y) B)operator/(x,y)C)y.operator/(x) D)operator/(y,x)18、有函数模板声明和一些变量定义如下:template T1 sum(T2,T3);double d1,d2;则下列调用中,错误的是 DA)sumdouble,double,double(d1,d2);B)sum(d1,d2);C)sum(d1,d2);D)sum(d1,d2);/ 没有参数指明T1的类型19、 有如下类定义class A char *a;public:A():a(0) A(char *aa) /把aa所指字符串拷贝到a所指向的存储空间a=

15、 _ new charstrlen(aa)+1;_ ;strcpy(a,aa);A() delete a; 横线处应填写的表达式是20、有如下程序:#includeusing namespace std;class test private:int a;public:test ( ) coutconstructorendl; test(int a)coutaendl;test(const test &_test)a=_test.a;coutcopy constructorendl;test() coutdestructorendl; ;int main()test A(3);return 0;

16、 运行时输出的结果是 3 destructor21、下列运算符重载函数中,属于类 Value 的成员函数的是(ACD)。A)Value operator+(Value); B)Value operator-(Value, Value);C)Value operator*(int);D)Value operator/(Value); 22、下列函数模板的定义中,不合法的是CDA) template T abs(T x) return x 0 ? -x: x;B)template T abs(T x)return x0 ?-x:x;C)template T abs(T x)return x0 ?-

17、x:x;D)template T abs(T x)returm x0 ?-x:x;23、有如下程序:#includeusing namespace std;class point public:static int number;public:point() number+; point() number-; ;int point:number=0;void main()point *ptr;point A,B;point *ptr_point=new point3;ptr=ptr_point;point C;coutpoint:numberendl;deleteptr;运行时输出的结果是 6

18、24、下列函数原型声明中,正确的是 ABDA)int fnction(int m,int n);B)int function(int,int);C)int function(int m=3,int n);D)int function(int &m,int &n);25、若有函数模板mySwap和一些变量定义如下: template void mySwap(T X,T Y); double d1,d2; int i1,i2; 下列对mySwap的调用中,正确的是 ABD A)mySwap(i1,i2) B)mySwap(d1,d2)C)mySwap(i1,d1) D)mySwap(i2,d2)2

19、6、下列程序的输出是3,请填充程序中的空缺,使该行形成一个运算符重载函数的定义。#includeusing namespace std;class MyNumberint n;public:MyNumber(int k):n(k)-operator- int( )const return n;int main()MyNumber num1(3);coutint(num1);return 0;27、有如下程序:/ 没有错误#include#includeusing std:cout;class Pointpublic:friend double distance(const Point &p);

20、 /p距原点的距离Point(int xx=0,int yy=0):x (xx),Y(yy) / 改为point(int xx,int yy):x(XX),y(YY)private:int x,Y;double distance(const Point &p) /return sqrt(p.x*p.x+p.Y*p.Y);int main()Point p1(3,4);coutdisp(); a-disp(); *found(3)* b-disp(); 普通对象 b.disp(); 30、请将下列模板类Data补充完整。template class Datapublic:void put (T

21、v) val=v; _T_ get() /返回数据成员val的值,返回类型不加转换 return val; private:T val; 31、根据程序中的注释将下列缺失部分补充完整。#include iostream.hclass Pointint x, y; /点的x和y坐标public:Point(int xx=0,int yy=0):x(xx),y(yy) ;class CirclePoint center; /圆心位置Int radius; /半径public: /利用cx和cy分别初始化圆心的x和y坐标-Circle(int cx,int cy,int r):center(cx,c

22、y)-,radius(r) void area() cout3.14159*radius*radiusendl; ;32、下列程序的输出结果是_0 4 2_。#include using namespace std;class Test public: Test() cnt+; Test() cnt-; static int Count() return cnt;private: static int cnt;int Test:cnt = 0;int main() cout Test:Count() ; Test tl, t2; Test* pT3 = new Test; Test* pT4

23、= new Test; cout Test:Count() ; delete pT4; delete pT3; cout Test:Count() endl;return 0;33、使用VC6打开工程test4_2。此工程包含一个源程序文件test4_2.cpp,其对一个学校的教师和考生情况进行了描述。由于教师和考生之间有相同的信息,如姓名、年龄等,所以可抽象出一个基类person,考生类student和教师类teacher作为person类的派生类。请按要求完成下列操作,将程序中的类定义补充完整。 (1)定义基类person的私有数据成员name和age,分别用于表示姓名和年龄,name为字

24、符指针,age为血型的数据。请在注释“/*1*”之后添加适当的语句。(2分) (2)完成基类person的重载构造函数person(char *n,int a)的定义,把数据成员name,age分别初始化为参数n,a的值,请在注释“/*2*”之后添加适当的语句。 (2分) (3)根据主函数main中对s1的声明,定义派生类student的构造函数。在注释“/*3*”之后添加适当的语句。(3分) (4)完成派生类teacher成员函数void setinf(ehar *n,int a,char *d,char *1)的定义,其功能为记录教师的姓名、年龄、院,系与职称信息。请在注释“/*4*”之后添加适当的语句。 (2分) 输出结果如下:刘雷(45)destructor 蒋军(23)destructor #includeiostream.h #include class person /*1*

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

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