C++编程题,编写一个有关矩阵的类
题目:请编写一个矩阵类,类中包括行数、列数、指向矩阵的指针等数据成员和构造函数、显示矩阵内容函数、求矩阵中值最小元素的位置函数等成员函数,然后编写一个主函数加以演示。请各...
题目:请编写一个矩阵类,类中包括行数、列数、指向矩阵的指针等数据成员和构造函数、显示矩阵内容函数、求矩阵中值最小元素的位置函数等成员函数,然后编写一个主函数加以演示。
请各位大侠帮忙写一下,本人菜鸟,请不要用太难的函数,非常感谢 展开
请各位大侠帮忙写一下,本人菜鸟,请不要用太难的函数,非常感谢 展开
1个回答
展开全部
#include<iostream>
using namespace std;
class juzhen
{
private:
int **M; //存储矩阵
int lines; //行数
int rows; //列数
public:
juzhen(int line,int row) //构造函数
{
lines=line;
rows=row;
M=new int*[lines];
for(int i=0;i<rows;i++)
M[i]=new int[rows];
}
~juzhen() //析构函数
{
for(int i=0;i<rows;i++)
delete M[i];
}
void input(); //输入元素
void print(); //输出元素
int * get_pos(); //获取矩阵的最小值的位置
};
void juzhen::input()
{
for(int i=0;i<lines;i++)
for(int j=0;j<rows;j++)
cin>>M[i][j];
}
void juzhen::print()
{
for(int i=0;i<lines;i++)
{
for(int j=0;j<rows;j++)
cout<<M[i][j]<<" ";
cout<<endl;
}
}
int *juzhen::get_pos()
{
int temp=10000;
int result[2]={0};
for(int i=0;i<lines;i++)
{
for(int j=0;j<rows;j++)
if(M[i][j]<temp)
{
result[0]=i;
result[1]=j;
}
}
return result;
}
int main()
{
int line,row;
int *min_pos;
cout<<"输入矩阵的行与列:"<<endl;
cin>>line>>row;
juzhen T_juzhen(line,row);
cout<<"输入矩阵的元素:"<<endl;
T_juzhen.input();
cout<<"矩阵的元素为:"<<endl;
T_juzhen.print();
cout<<"矩阵的最小元素的位置是:"<<endl;
min_pos=T_juzhen.get_pos();
cout<<"("<<min_pos[0]<<" "<<min_pos[1]<<")"<<endl;
return 0;
}
using namespace std;
class juzhen
{
private:
int **M; //存储矩阵
int lines; //行数
int rows; //列数
public:
juzhen(int line,int row) //构造函数
{
lines=line;
rows=row;
M=new int*[lines];
for(int i=0;i<rows;i++)
M[i]=new int[rows];
}
~juzhen() //析构函数
{
for(int i=0;i<rows;i++)
delete M[i];
}
void input(); //输入元素
void print(); //输出元素
int * get_pos(); //获取矩阵的最小值的位置
};
void juzhen::input()
{
for(int i=0;i<lines;i++)
for(int j=0;j<rows;j++)
cin>>M[i][j];
}
void juzhen::print()
{
for(int i=0;i<lines;i++)
{
for(int j=0;j<rows;j++)
cout<<M[i][j]<<" ";
cout<<endl;
}
}
int *juzhen::get_pos()
{
int temp=10000;
int result[2]={0};
for(int i=0;i<lines;i++)
{
for(int j=0;j<rows;j++)
if(M[i][j]<temp)
{
result[0]=i;
result[1]=j;
}
}
return result;
}
int main()
{
int line,row;
int *min_pos;
cout<<"输入矩阵的行与列:"<<endl;
cin>>line>>row;
juzhen T_juzhen(line,row);
cout<<"输入矩阵的元素:"<<endl;
T_juzhen.input();
cout<<"矩阵的元素为:"<<endl;
T_juzhen.print();
cout<<"矩阵的最小元素的位置是:"<<endl;
min_pos=T_juzhen.get_pos();
cout<<"("<<min_pos[0]<<" "<<min_pos[1]<<")"<<endl;
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询