第四章
来源:互联网 发布:java 字符串前面补零 编辑:程序博客网 时间:2024/05/22 00:55
1:#include <iostream>using namespace std;class Complex {public: 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 imag;}void Complex::display(){cout<<"("<<real<<","<<imag<<"i)"<<endl;}Complex operator + (Complex &c1,Complex &c2){ return Complex(c1.get_real()+c2.get_real(),c1.get_imag()+c2.get_imag());}int main(){Complex c1(3,4),c2(5,-10),c3; c3=c1+c2; cout<<"c3="; c3.display(); return 0;}
2:#include <iostream>using namespace std;class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} Complex operator+(Complex &c2); Complex operator-(Complex &c2); Complex operator*(Complex &c2); 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.imag; return c;}Complex Complex::operator-(Complex &c2){Complex c; c.real=real-c2.real; c.imag=imag-c2.imag; return c;}Complex Complex::operator*(Complex &c2){Complex c; c.real=real*c2.real-imag*c2.imag; c.imag=imag*c2.real+real*c2.imag; return c;}Complex Complex::operator/(Complex &c2){Complex c; c.real=(real*c2.real+imag*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag); c.imag=(imag*c2.real-real*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag); return c;}void Complex::display(){cout<<"("<<real<<","<<imag<<"i)"<<endl;}int main(){Complex c1(3,4),c2(5,-10),c3; c3=c1+c2; cout<<"c1+c2="; c3.display(); c3=c1-c2; cout<<"c1-c2="; c3.display(); c3=c1*c2; cout<<"c1*c2="; c3.display(); c3=c1/c2; cout<<"c1/c2="; c3.display(); return 0;}<pre name="code" class="cpp">3:#include <iostream> //用VC++时改为∶ #include <iostream.h>using namespace std; //用VC++时为取消此行class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} Complex operator+(Complex &c2); Complex operator+(int &i); friend Complex operator+(int&,Complex &); void display(); private: double real; double imag;};Complex Complex::operator+(Complex &c){return Complex(real+c.real,imag+c.imag);}Complex Complex::operator+(int &i){return Complex(real+i,imag);}void Complex::display(){cout<<"("<<real<<","<<imag<<"i)"<<endl;}Complex operator+(int &i,Complex &c){return Complex(i+c.real,c.imag);}int main(){Complex c1(3,4),c2(5,-10),c3; int i=5; c3=c1+c2; cout<<"c1+c2="; c3.display(); c3=i+c1; cout<<"i+c1="; c3.display(); c3=c1+i; cout<<"c1+i="; c3.display(); return 0;}
4:#include <iostream>using namespace std;class Matrix //定义Matrix类 {public:Matrix(); //默认构造函数 friend Matrix operator+(Matrix &,Matrix &); //重载运算符“+” void input(); //输入数据函数 void display(); //输出数据函数 private: int mat[2][3]; };Matrix::Matrix() //定义构造函数{for(int i=0;i<2;i++) for(int j=0;j<3;j++) mat[i][j]=0;}Matrix operator+(Matrix &a,Matrix &b) //定义重载运算符“+”函数{Matrix c; for(int i=0;i<2;i++) for(int j=0;j<3;j++) {c.mat[i][j]=a.mat[i][j]+b.mat[i][j];} return c;} void Matrix::input() //定义输入数据函数{cout<<"input value of matrix:"<<endl; for(int i=0;i<2;i++) for(int j=0;j<3;j++) cin>>mat[i][j];}void Matrix::display() //定义输出数据函数{for (int i=0;i<2;i++){for(int j=0;j<3;j++) {cout<<mat[i][j]<<" ";} cout<<endl;}}int main(){Matrix a,b,c; a.input(); b.input(); cout<<endl<<"Matrix a:"<<endl; a.display(); cout<<endl<<"Matrix b:"<<endl; b.display(); c=a+b; //用重载运算符“+”实现两个矩阵相加 cout<<endl<<"Matrix c = Matrix a + Matrix b :"<<endl; c.display(); return 0;}
5:#include <iostream.h>//using namespace std;class Matrix {public: Matrix(); friend Matrix operator+(Matrix &,Matrix &); friend ostream& operator<<(ostream&,Matrix&); friend istream& operator>>(istream&,Matrix&); private: int mat[2][3]; };Matrix::Matrix(){for(int i=0;i<2;i++) for(int j=0;j<3;j++) mat[i][j]=0;}Matrix operator+(Matrix &a,Matrix &b){Matrix c; for(int i=0;i<2;i++) for(int j=0;j<3;j++) {c.mat[i][j]=a.mat[i][j]+b.mat[i][j]; } return c;}istream& operator>>(istream &in,Matrix &m){cout<<"input value of matrix:"<<endl; for(int i=0;i<2;i++) for(int j=0;j<3;j++) in>>m.mat[i][j]; return in;}ostream& operator<<(ostream &out,Matrix &m){for (int i=0;i<2;i++) {for(int j=0;j<3;j++) {out<<m.mat[i][j]<<" ";} out<<endl;} return out;}int main(){ Matrix a,b,c; cin>>a; cin>>b; cout<<endl<<"Matrix a:"<<endl<<a<<endl;cout<<endl<<"Matrix b:"<<endl<<b<<endl; c=a+b; cout<<endl<<"Matrix c = Matrix a + Matrix b :"<<endl<<c<<endl; return 0;}
6:#include <iostream>using namespace std;class Complex {public: Complex(){real=0;imag=0;} Complex(double r){real=r;imag=0;} Complex(double r,double i){real=r;imag=i;} operator double(){return real;} void display(); private: double real; double imag; };void Complex::display(){cout<<"("<<real<<", "<<imag<<")"<<endl;}int main(){Complex c1(3,4),c2; double d1; d1=2.5+c1; cout<<"d1="<<d1<<endl; c2=Complex(d1); cout<<"c2="; c2.display(); return 0;}
7:#include <iostream>using namespace std;class Student{public:Student(int,char[],char,float); int get_num(){return num;} char * get_name(){return name;} char get_sex(){return sex;} void display() {cout<<"num:"<<num<<"\nname:"<<name<<"\nsex:"<<sex<<"\nscore:"<<score<<"\n\n";} private: int num; char name[20]; char sex; float score;};Student::Student(int n,char nam[],char s,float so) {num=n; strcpy(name,nam); sex=s; score=so;}class Teacher {public: Teacher(){} Teacher(Student&); Teacher(int n,char nam[],char sex,float pay); void display(); private: int num; char name[20]; char sex; float pay;};Teacher::Teacher(int n,char nam[],char s,float p){num=n; strcpy(name,nam); sex=s; pay=p;}Teacher::Teacher(Student& stud) {num=stud.get_num(); strcpy(name,stud.get_name()); sex=stud.get_sex(); pay=1500;}void Teacher::display(){cout<<"num:"<<num<<"\nname:"<<name<<"\nsex:"<<sex<<"\npay:"<<pay<<"\n\n";}int main(){Teacher teacher1(10001,"Li",'f',1234.5),teacher2; Student student1(20010,"Wang",'m',89.5); cout<<"student1:"<<endl; student1.display(); teacher2=Teacher(student1); cout<<"teacher2:"<<endl; teacher2.display(); return 0;}
0 0
- 第四章第四题
- 第四章第四题
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 第四章
- 线程的阻塞
- C++求有序数组旋转之后的最小数字
- C++类库开发详解
- hdu1099
- 编写高质量iOS代码(四)
- 第四章
- 请尊重我们的劳动成果,北京光明天下信息服务有限公司
- andorid导航和切换效果界面设置
- Kth Largest Element in an Array
- U盘0字节,无法格式化,无法打开解决办法
- Linux 调节并自动保存屏幕亮度,重启有效
- zoj3648 网格点锐角三角形方案数
- 第十二周 阅读程序(4)
- window命令下的基本操作之VIM文本编辑器