1、阅读程序分析结果第6章程序1#includeclass Apublic: int fun(int b)return a*c+b; A(int i)a=i; int c;private: int a;void main() A a(1); int A:*pc=&A:c; a.*pc=8;/a.c couta.fun(1)endl;程序2#include class Apublic: void disp() coutm=mendl; coutn=nendl; int m,n;void main() int A:*p=&A:m; A a; a.*p=10; p=&A:n; a.*p=20; a.di
2、sp();程序3#include class A int m,n;public: void setm(int i)m=i; void setn(int i)n=i; void disp() coutm=m,n=nendl; ;void main() A a; void (A:*pfun)(int); pfun=A:setm; (a.*pfun)(10); pfun=A:setn; (a.*pfun)(20); a.disp();程序4#includeclass A public: int fun(int b)return a*c+b; A(int i)a=i; int c; private:
3、int a;void main() A x(8); int A:*pc; pc=&A:c; x.*pc=3; int(A:*pfun)(int); pfun=A:fun; A*p=&x; cout*pfun)(5)endl;程序5#includeint x,y;void fun(int i, int *j)i=i+1;*j=*j+1;void print()coutxy;void main() x=1,y=2; fun(x,&y); print();程序6#include class Mpublic: M() x=y=0; M(int i,int j) x=i;y=j; void copy(M
4、 *m) x=m-x; y=m-y; void setxy(int i,int j) x=i;y=j; void print() coutx,ysetxy(22,25);void main() M p(5,7),q; q.copy(&p); fun(p,&q); p.print(); q.print();程序7#includeint x,y;void fun(int i, int &j) i=i+1; j=j+1;void print() coutxyendl;void main() x=1,y=2; fun(x,y); print();程序8#includeclass M public: M
5、() x=y=0; M(int i,int j) x=i;y=j; void copy(M &m) x=m.x; y=m.y; void setxy(int i,int j) x=i; y=j; void print() coutx,yendl; private: int x,y;void fun(M m1,M &m2) m1.setxy(12,15); m2.setxy(22,25);void main() M p(5,7),q; q.copy(p); fun(p,q); p.print(); q.print();程序9#includeclass P int x,y; public: P(i
6、nt m, int n)x=m;y=n; P()x=1;y=1; P(int a,int *b)x=a;y=*b; void setxy(int i,int j)x=i;y=j; void printxy()coutxyendl; P(P &q)x=q.x+1;y=q.y+1;void fun(P x,P &y) x.printxy(); y.printxy(); x.setxy(3,4); y.setxy(6,7);void main() int xx=5,yy=7; P c(1,2),d,e(xx,&yy); fun(c,d); c.printxy(); d.printxy(); e.pr
7、intxy();程序10#include class A public: A( ) a=b=0; A(int i,int j) a=i; b=j; void copy(A &aa); void print( ) couta,bendl; private: int a,b;void A:copy(A &aa) if(this=&aa) return; *this=aa; void main( ) A a1,a2(3,4); a1.copy(a2); a1.print( );程序11#include class Apublic: A(int i) a=i; void print() coutaen
8、dl; coutaendl; private: int a;void main() A x(8),y(50); x.print(); y.print();程序12#includeclass Apublic: A(int i) a=i; int compare(A n) if(this-a=n.a) return 1; else return 0; private: int a;void main() A x(5),y(10),z(5); coutpare(y)endl; coutpare(x)endl;程序12#includeclass Localpublic: void ini(int x,
9、int y) X=x;Y=y; Local add(Local b) Local c; c.X=this-X+b.X; c.Y=this-Y+b.Y; return c; void print() coutX+Yiendl;private: int X,Y;a,b;void main() a.ini(5,6); b.ini(5,10); a.add(b).print();程序14#include class Local int X;public: void ini(int X) this-X=X*X; void print() coutXendl; a;void main() a.ini(5)
10、; a.print();程序15#includeclass MyClass int n;public: MyClass() MyClass(int m)n=m; void addvalue(int m) MyClass s1; s1.n=n+m; *this=s1; void disp() coutn=nendl; ;void main() MyClass s(10); s.disp(); s.addvalue(5); s.disp();程序16#include class exam int x; public: void setx(int n) x=n; int getx() return
11、x; ;void main() exam ob4; int i; for(i=0;i4;i+) obi.setx(i); for(i=0;i4;i+) cout obi.getx() endl; 程序17#include class exam int x; public: exam(int n) x=n; int getx() return x; ; void main() exam ob4=1,2,3,4; int i; for(i=0;i4;i+) cout obi.getx() endl;程序18#includeclass exam int x; public: exam() x=3;
12、/不带参数的构造函数 exam(int n) x=n; /带参数的构造函数 int getx() return x; ; int main() exam op(2); /调用带参数的构造函数 cout op x=op.getx() endl; exam ob4; /调用不带参数的构造函数 cout ob2 x=ob2.getx() endl; return 0;程序19#includeclass DATE public: DATE() month=year=day=0; coutdefault constructor calledn; DATE(int m, int d, int y) mon
13、th=m; day=d; year=y; coutconstructor calledn; DATE() coutdestructor calledn; void Print( ) coutmonth=month,day=day,year=yearendl; private: int month ,day, year; ;void main() DATE a5=DATE(7,22,1998),DATE(7,23,1998),DATE(7,24,1998); a3=DATE(7,25,1998); a4=DATE(7,26,1998); for(int i=0;i5;i+) ai.Print()
14、;程序20#includeint a3=1,2,3,4,5,6,7,8,9;void main( ) int (*pa)3(a); for(int i=0;I3;I+) coutn; for (int j=0;j3;j+) cout*(*(pa+i)+j) ; coutn;程序21class Mpublic: M() a=b=0; M(int i,int j) a=i;b=j; void print() couta,bt;private: int a,b;void main()M m24;int x=10,y=10;for(int i=0;i2;i+) for(int j=0;j4;j+)mi
15、j=M(x+=2,y+=10);M (*pm)4(m);for(i=0;i2;i+) for(int j=0;j4;j+)(*(*(pm+i)+j).print();程序22#includechar *name5= Tom, John, Mary,Smith Black,Rose; void main() for(int i=0;i5;i+) coutnameiendl;程序23#include class A public: A(int I=0,int j=0) a=I;b=j; void print( )couta“,”bendl;private: int a,b; ;void main(
16、 ) A a1(7,8),a2,a3(5,7); A *b3=&a3,&a2,&a1; for (int I=0;Iprint( ); 程序24class Ppublic: P(char i) a=i; void print() coutprint(); 或者采用下面的主函数void main() P s3=a,b,c; P *x=s; for(int i=0;i3;i+) xi.print(); coutendl;程序25class Sample int x;public: void setx(int i) x=i; int putx() return x;void main() Sampl
17、e *p; Sample A3; A0.setx(5); A1.setx(6); A2.setx(7); for(int j=0;j3;j+) p=&Aj; coutputx(); coutendl;程序26class Expublic: Ex(int x,char c=c); Ex() coutbendl; void outdata() coutchdaendl;private: int da; char ch;Ex:Ex(int x,char c):da(x),ch(c) coutAendl;void main() Ex w(3,a),y(1); Ex z2=Ex(10,a),Ex(1,d
18、); w.outdata(); y.outdata(); z0.outdata();程序27 class Sample int x; public: Sample() void setx(int i)x=i; friend int max(Sample B,int n) int m=0; for(int i=0;im)m=Bi.x; return m; ; void main() Sample A10; int Arr=90,87,42,78,97,84,60,55,78,65; for(int i=0;i10;i+) Ai.setx(Arri); coutmax(A,10)endl;程序28
19、#includeconst int N=6; /符号常量void print (const int *p,int n); /常指针作函数参数void main( ) int arrayN; for(int i=0;iarrayi ; print(array,N); /数组名为实参 void print(const int *p,int n) cout *p; for(int i=1;in;i+) cout, *(p+i); cout endl; 程序29#include class Kpublic: K(int i) k=i; int setk() const return k;private
20、: int k;int add(const K& g1,const K& g2) int sum=g1.setk()+g2.setk(); return sum; void main() K k1(8),k2(17); int s=add(k1,k2); coutsendl;程序30class Mpublic: M(int x,int y) X=x;Y=y; void Move(int x,int y) X=x;Y=y; void Print() const coutX, Yendl;private: int X,Y;void main() const M m1(1,2); m1.Move(3
21、,3); /错误 m1.Print(); M m2(3,4); m2.Move(3,3); m2.Print();程序31#includeclass R int R1,R2; public: R(int r1, int r2)R1=r1;R2=r2; void print(); void print() const; /函数重载 ;void R:print ( ) coutR1:R2endl ;void R:print( ) const /常成员函数的实现 coutR1; R2endl ; void main( ) R a(5,4); a.print( ); const R b(20,52);
22、 b.print( ); 程序32class Apublic: A(int i); void Print();private: const int a; static const int b; const int& r;const int A:b=10;A:A(int i):a(i),r(a)void A:Print() couta:b:rendl;void main() A a1(100),a2(0); a1.Print(); a2.Print();程序33#includeclass Apublic: A(int i,int j) A1=i; A2=j; void print() coutA1,A2endl;private: int A1, A2;class Bpublic: B(int i,int j,int k):a(i,j),b(k) void print() a.print(); / 子对象成员函数的调用 coutbendl; private: A a; /子对象 int b; ;void main() B b(6,7,8); b.print();程序34#includeclass Apublic: A(int i,int j) coutA构造endl; A1=i; A2=j; void print() coutA1,A2endl;private: int A
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1