⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4.4.cpp

📁 面向对象技术作业银行系统
💻 CPP
字号:
#include <iostream>
#define MaxArray 100					//最大元素个数;

/**
*@Title: Array类层次结构。
*@Author: Jiaong; 
*@Version: 1.0;
*@ 该类层次包括底层基类:intArray 然后是由它派生的Mattix、Array3D类,由Mattix又派生SquareMatrix类;
*/

using namespace std;


class  intArray							//base class;
{
	public:
		void init()						//初始化;
		{
			cout<<"录入整数个数:"<<endl;
			cin>>n;
			cout<<"录入:"<<endl;
			cout<<"第一个:"<<endl;
			cin>>ar[0];
			cout<<endl;
			for(int i=1;i<n;i++)
			{
				cout<<"下一个:"<<endl;
				cin>>ar[i];
			}
			cout<<"ok"<<endl;
		}
		void print(){					//打印函数;
			for(int i=0;i<n;i++)
			cout<<ar[i]<<";"<<endl;
		}
	protected:
    int ar[MaxArray];                   //数组元素;
    int n;								//元素个数; 
};



class Mattix : public intArray			//矩阵类;
{
	public:
	  virtual void init()				//初始化重载;
	  {
		  cout<<"矩阵行数:"<<endl;
		  cin>>rowCount;
		  cout<<"矩阵列数:"<<endl;
		  cin>>colCount;
		  cout<<"录入:"<<endl;
		  for(int i=0;i<rowCount;i++)
			  for(int j=0;j<colCount;j++)
			  {	
				  cout<<"录入第"<<i+1<<"行第"<<j+1<<"列的值:"<<endl;
				  cin>>ar[j+i*colCount];
			  }
	  }
	  virtual void print()				//打印重载;
	  {
		  cout<<"打印结果:"<<endl;
		  for(int row=0;row<rowCount;row++)
		  {
			for (int col=0;col<colCount;col++)
				cout<<ar[col+row * colCount]<<" ";
			cout <<"\n";
		}
	  }
	protected:
		int rowCount,colCount;		   //行数和列数;
};



class Array3D :public intArray{		   //三维矩阵类;
	public:
		virtual void init()			   //初始化重载;
		{
			cout<<"矩阵长度:"<<endl;
			cin>>lenth;
			cout<<"矩阵宽度:"<<endl;
			cin>>wide;
			cout<<"矩阵高度:"<<endl;
			cin>>height;
			cout<<"录入:"<<endl;
			for(int i=0;i<lenth;i++)
				for(int j=0;j<wide;j++)
					for(int k=0;k<height;k++)
					{
						cout<<"录入长["<<i<<"]宽["<<j<<"]高["<<k<<"]的值:"<<endl;
						cin>>ar[i*wide*height+j*height+k+1];
					}
			cout<<"ok"<<endl;
		}
		virtual void print()			 //打印重载;
		{
			cout<<"打印结果"<<endl;
			for(int i=0;i<lenth;i++)
				for(int j=0;j<wide;j++)
					for(int k=0;k<height;k++)
					{
						cout<<ar[i*wide*height+j*height+k+1]<<" ";
						cout<<"\n";
					}
		}
	protected:
		int lenth,wide,height;			  //三维矩阵长、宽、高;
};



class SquareMatrix : public Mattix		   //正矩阵类;
{
	public:
		virtual void init()					//初始化重载;
		{
			cout<<"录入矩阵边长:"<<endl;
			cin>>Count;
			rowCount=colCount=Count;
			cout<<"录入数据:"<<endl;
			for(int i=0;i<rowCount;i++)
				  for(int j=0;j<colCount;j++)
				  {	
					cout<<"录入第"<<i+1<<"行第"<<j+1<<"列的值:"<<endl;
					cin>>ar[j+i*colCount];
				  }
			cout<<"录入ok"<<endl;
		}
	protected:
		int Count;							//矩阵边长;
};



int main()									//主函数;
{
   SquareMatrix a;
   a.init();
   a.print();
   delete &a;
   return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -