实验二
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二C++基础实验目的
类定义;类对象使用;类成员变量、成员函数的定义和使用;观察类的组合使用;理解类的作用域;理解类的声明;理解类中private 和public 权限;掌握拷贝构造函数的定义和使用;掌握构造函数的重载;掌握析构函数的定义和使用;理解构造函数和析构函数的执行过程
实验过程设计.1.// 试设计一个复数类,该类有实部和虚部两个成员数据,成员数据采用私有访问权限,同时该类有两个共有成员函数,//分别用来设置成员数据和输出成员数据,//在主函数中分别采用对象方式,指针方式和引用方式来调用该类的公有函数设置和输出成员数据。
#include
#include
using namespace std;
class Complex{
public:
void Init(double x,double y )
{
a=x;
b=y;
}
double Real(){return a;};
double Image(){return b;};
private:
int a;
int b;
};
void main()
{
Complex m;
m.Init(3,1);
cout<<"The complex is "< Complex *p=&m; p->Init(3,1); cout<<"The complex is "< Complex &q=m; q.Init(3,1); cout<<"The complex is "< } /*2 .设计实现一个CPoint 类,满足以下要求: a .该类包含两个整型成员变量x (横坐标)和y (纵坐标),以及一个输出函数Print() 用来输出横坐标和纵坐标,要求不可以在类的外部直接访问成员变量; b .可以采用没有参数的构造函数初始化对象,此时的成员变量采用默认值0 ; c .可以采用直接输入参数的方式来初始化该类的成员变量; d .可以采用其它的CPoint 对象来初始化该类的成员变量; e .设计一个主函数来测试以上功能。*/ #include #include using namespace std; class CPoint{ public: void print(); CPoint(){x=0;y=0;} point(int x1,int y1); // int GetX() {return x;} // int GetY() {return y;} private: int x; int y; }; void CPoint::print() { cout< } CPoint::point(int x1,int y1) { x=x1; y=y1; } void main() { CPoint p; CPoint(); p.print(); p.point(1,2); p.print(); // p.GetX(); // p.GetX(); } 3 .设计一个CStudent (学生)类,并使CStudent 类具有以下特点: a .该类具有学生姓名、学号、程序设计、信号处理、数据结构三门课程的成绩; b .学生全部信息由键盘输入,以提高程序的适应性; c .通过成员函数统计学生平均成绩,当课程数量增加时,成员函数无须修改仍可以求取平均成绩; d .输出学生的基本信息、各科成绩与平均成绩; e .学生对象的定义采用对象数组实现; f .统计不及格学生人数。 #include #include #include #define N 3 #define M 3 class CStudent { public: void setstudent(char *name,char *sn,float score[N]); void showstudent(); private: char Sname[10]; char Sno[8]; float Score[3]; float Avg; float Sum; int count; }; void CStudent :: setstudent(char *name,char *sn,float score[N]) { int i; float Sum=0.0; int count=0; strcpy(Sname,name); strcpy(Sno,sn); for(i=0;i { Score[i]=score[i]; count++; } for(i=0;i<3;i++) { Sum=Sum+Score[i]; } Avg=Sum/count; } void CStudent ::showstudent() { int i; cout< for(i=0;i<3;i++) cout<