1、
第二阶段 面向对象程序设计
1.题目:
自定义一个示意性的复数类型complex,其中含有若干个成员函数,使用该类可以完成复数的加减乘除法以及对复数的输出。请完成类定义,并编制主函数,说明complex类对象,对定义的各成员函数进行调用。
源代码:
#include
2、ble r,double i); complex jiaCom(complex c2); complex jianCom(complex c2); complex chengCom(complex c2); complex chuCom(complex c2); complex moCom(complex c2); void out(); void outCom(); }; complex::complex() {real=0;imag=0;} //类外定义析构函数 complex::complex(double r,double i):real(r),i
3、mag(i){}
void complex::out() //定义复数的输出函数
{cout<<"原复数为:("< 4、函数
{
real=real-c2.real;imag=imag-c2.imag;
cout<<"两复数进行减法运算后的负数为:";
return complex(real,imag);
}
complex complex::chengCom(complex c2) //定义复数的乘法函数
{
double x,y;
x=real;y=imag;
real=x*c2.real-y*c2.imag;
imag=c2.real*y+x*c2.imag;
cout<<"两复数进行乘法运算后的负数为:";
return complex(real,i 5、mag);
}
complex complex::chuCom(complex c2) //定义复数的除法函数
{
double x,y;
x=real;y=imag;
real=(x*c2.real+y*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);
imag=(c2.real*y-x*c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);
cout<<"两复数进行除法运算后的负数为:";
return complex(real,imag);
}
void complex: 6、outCom() //运算函数输出
{cout<<"("< 7、a!=3&&a!=4) {cout<<"不符合要求。"< 8、include 9、m0),d(d0){}
void DateType::set_DateType()
{cin>>y>>m>>d;}
void DateType::incrementDay() //对输入的日期加一天
{
if(d==28&&m==2)
{
if((y%4==0&&y%100!=0)||y%400==0) d++;
else {d=0;m=3;}
}
if(d==29&&m==2)
{
if((y%4==0&&y%100!=0)||y%400==0) {d=1;m=3;}
}
if(d==30)
{
if(m==1| 10、m==3||m==5||m==7||m==8||m==10||m==12) d++;
else {d=1;m++;}
}
if(d==31)
{
if(m==12) {d=1;m=1;y++;}
else {d=1;m++;}
}
else d++;
}
bool DateType::equal(DateType dt2) //判断该日期是否和系统预设的日期相同,并返回一定值
{
if(y==dt2.y&&m==dt2.m&&d==dt2.d) return true;
else return false;
}
void 11、DateType::printDate()
{
cout<<"此时该天的日期是:"< 12、入为:";dt3.printDate();
dt2.incrementDay(); //调用加一天的函数
dt3.incrementDay();
cout<<"输入日期加后:"< 13、endl;
else
cout<<"系统输入与系统预设日期不相同。"< 14、seCla
{
public:
virtual double fib(int n);
};
class fib3Cla:public baseCla
{
public:
virtual double fib(int n);
};
double fib1Cla::fib(int n)
{
long double a=1,b=1;
for(int i=1;i<=n/2;i++)
{a=a+b;b=a+b;}
return b;
}
double fib2Cla::fib(int n)
{
long double a[2000]={1, 15、1};
double b;
if(n>2000) cout<<"error!"< 16、cout.flags(ios::scientific);
cout.precision(15);
cout<<"fib("< 17、out<<"--------------fib3Cla--------------"< 18、象实现所定义的相关运算(以验证其正确性)。
源代码:
#include 19、or + (point &pt2)
{
point c;
c.x=x+pt2.x;
c.y=y+pt2.y;
return c;
};
double point::operator ^ (point &pt2)
{
double c;
c=sqrt((x-pt2.x)*(x-pt2.x)+(y-pt2.y)*(y-pt2.y));
return c;
};
void point::display()
{
cout<<"("< 20、5),pt2(-1.5,6);
double c;
pt=pt1+pt2;
c=pt1^pt2;
pt1.display();
cout<<"+";
pt2.display();
cout<<"=";
pt.display();
cout< 21、元素个数也可变化):
源代码:
#include 22、d tmplt 23、t 24、各对象数据进行随机读写处理)。并设计该类的成员函数,
而且对输出运算符"<<"进行重载,使该运算符能够完成将一个学生的信息输出到屏幕上。要求成员函数完成以下功能:
(1) 从键盘输入一个学生的有关信息,并将它们存入到数据文件中(按编号来确定写出位置)。
(2) 按编号对学生信息信息进行检索并将检索结果显示在屏幕上。
(3) 计算某编号学生的总成绩。
源代码:
#include 25、char Name[10];
char Sex[10];
int Age;
int Math,Com,Eng,Total;
public:
void getdata() //输入类元素
{
cout<<"编号: ";
cin>>Num;
cout< 26、 ";
cin>>Age;
cout< 27、tw(5)< 28、r(int i=0;i 29、号姓名性别年龄数学成绩计算机成绩外语成绩总分"<






