《面向对象程序设计》答案

上传人:平*** 文档编号:14370988 上传时间:2017-10-29 格式:DOC 页数:20 大小:117.45KB
返回 下载 相关 举报
《面向对象程序设计》答案_第1页
第1页 / 共20页
《面向对象程序设计》答案_第2页
第2页 / 共20页
《面向对象程序设计》答案_第3页
第3页 / 共20页
《面向对象程序设计》答案_第4页
第4页 / 共20页
《面向对象程序设计》答案_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《《面向对象程序设计》答案》由会员分享,可在线阅读,更多相关《《面向对象程序设计》答案(20页珍藏版)》请在金锄头文库上搜索。

1、实验一 熟悉VC+IDE开发环境一、实验目的1、熟悉 VC+6.0 集成开发环境,熟练掌握 VC+6.0 项目工作区、各种编辑器、菜单栏和工具栏的使用。2、掌握如何编辑、编译、连接和运行一个 C+程序。3、通过运行简单的C+程序,初步了解C+源程序的结构和特点。二、实验要求1、分析下列程序运行的结果。程序一:#include int add(int x,int y=8);void main() int x=4;coutvoid main() int *p,i;i=5;p=&i;i=*p+10;cout void main(void) int i=10;int &r=i; r+;cout int

2、 f(int i) static int k=1; for(;i0;i-) k +=i; return k; void main() int i; for(i=0;ivoid func();int n=1; void main() static int a; int b= -9; cout int amount=123; void main() int amount=456; coutusing namespace std;int max(int a,int b,int c) /求3个整数中的最大者if (ba) a=b;if (ca) a=c;return a; int max(int a,

3、 int b) /求两个整数中的最大者if (ab) return a;else return b;int main( )int a=7,b=-4,c=9;coutusing namespace std;int main()int max(int a,int b,int c=0);int a,b,c;cinabc; couta) a=b;if(ca) a=c;return a;3、有5个字符串,要求对它们按由小到大顺序排列,用string方法。#include #include using namespace std;int main() int i;string str5=BASIC,C,F

4、ORTRAN,C+,PASCAL;void sort(string );sort(str);coutsi+1)t=si;si=si+1;si+1=t;4、定义一个求两个数中较小值的函数模板min( ) ,要求在main( )函数中进行调用求两个浮点型数据和两个整型数据中较小的数。#include iostream#include stringusing namespace std;templateT min(T a,T b)return ausing namespace std;class Datepublic:Date(int,int,int);Date(int,int);Date(int)

5、;Date( );void display( );private:int month;int day;int year;DateDate(int m,int d,int y):month(m),day(d),year(y) DateDate(int m,int d):month(m),day(d) year=2005; DateDate(int m):month(m) day=1;year=2005;DateDate( ) month=1;day=1;year=2005;void Datedisplay( )cout#include Person:person(char *Xname,int

6、Xage,int Xsalary,char *Xtel) strcpy ( name, xname);age=xage;salary=xsalary;strcpy (tel,xtel);void Person:disp() cout#includeclass smallonepublic:smallone(int sma) cout#includeclass smallonepublic:smallone(int sma) coutusing namespace std;class Studentpublic:Student(int n,float s):num(n),score(s)int

7、num;float score;void main()Student stud5=Student(101,78.5),Student(102,85.5),Student(103,98.5),Student(104,100.0),Student(105,95.5);void max(Student* );Student *p=&stud0;max(p);reyurn 0;void max(Student *arr)float max_score=arr0.score;int k=0;for(int i=1;imax_score) max_score=arri.score;k=i;coutusin

8、g namespace std;templateclass Comparepublic:Compare(numtype a,numtype b)x=a;y=b;numtype max()return (xy)?x:y;numtype min()return (x cmp1(3,7);cout cmp2(45.78,93.6);cout cmp3(a,A);coutusing namespace std;class Complex /定义Complex类public:Complex(float x=0,float y=0)real=x;imag=y; /构造函数Complex complex_a

9、dd(Complex &c2); /声明复数相加函数void display() coutusing namespace std;class Complexpublic:Complex()real=0;imag=0;Complex(double r,double i)real=r;imag=i;double get_real();double get_imag();void display();private:double real;double imag;double Complex:get_real()return real;double Complex:get_imag()return

10、imag;void Complex:display()coutusing namespace std;class Complexpublic:Complex()real=0;imag=0;Complex(double r,double i)real=r;imag=i;Complex operator + (Complex &c2); void display();private:double real;double imag;Complex Complex:operator + (Complex &c2)Complex c;c.real=real+c2.real;c.imag=imag+c2.

11、imag;return c;void Complex:display()coutusing namespace std;class Complexpublic:Complex()real=0;imag=0;Complex(double r)real=r;imag=0;Complex(double r,double i)real=r;imag=i;friend Complex operator+ (Complex &c1,Complex &c2);void display();private:double real;double imag;Complex operator+ (Complex &

12、c1,Complex &c2)return Complex(c1.real+c2.real, c1.imag+c2.imag);void Complex:display()coutclass A public:A()coutclass A int a;public :A(int aa=0) a=aa; A() cout#include using namespace std;class Teacherpublic:Teacher(string nam,int a,char s,string tit,string ad,string t);void display();protected:str

13、ing name;int age;char sex;string title;string addr;string tel;Teacher:Teacher(string nam,int a,char s,string tit,string ad,string t):name(nam),age(a),sex(s),title(tit),addr(ad),tel(t) void Teacher:display() coutclass ONE public:virtual void f()coutf();/2213程序二:#includeclass Base public:virtual void

14、fn() cout fn();p=≻ p-fn();/In Base ClassIn Sub Class2、实现一个类A,在A中有两个私有的整型变量a和b,定义构造函数对a和b进行初始化,并实现成员函数geta()取得a 的值和getb()取b的值。实现类B从A继承,覆盖geta () ,使其返回a的2倍。主函数中声明类B 对象,调用类B中的geta()并将结果输出。#include iostreamusing namespace std;class A private:int a;int b;public:A(int m,int n) a=m;b=n;int geta() return

15、 a;int getb() return b;class B :public Apublic:B(int m,int n):A(m,n)int geta() return A:geta()*2;void main() B b(2,2);cout using namespace std;/定义抽象基类Shapeclass Shapepublic:virtual double area() const =0; /纯虚函数;/定义Circle类class Circle:public Shapepublic:Circle(double r):radius(r) /结构函数virtual double area() const return 3.14159*radius*radius; /定义虚函数protect

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号