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

📄 matrix.cpp

📁 十字链表和求鞍点的程序
💻 CPP
字号:
#include<iostream.h>

struct Matrix
{
	int * M;
	int m;
	int n;
};

int i;
int j;
int g;
int k;

Matrix createMatrix()
{
	Matrix m1;
	cout<<"请输入矩阵的 "<<endl;
	cout<<"行:"<<endl;
	cin>>m1.m;
	cout<<endl;
	cout<<"列: ";
	cin>>m1.n;

	m1.M=new int[m1.m*m1.n];

	cout<<"请依次输入矩阵各元素:"<<endl;

	for(i=0; i<m1.m; i++)
	{
		for(j=0;j<m1.n;j++)
		{
			cin>>m1.M[i*m1.n+j];
		}
	}

	cout<<"所得矩阵为:"<<endl;

	for(i=0; i<m1.m; i++)
	{
		for(j=0; j<m1.n; j++)
		{
			cout<<m1.M[i*m1.n+j]<<"  ";
		}
		cout<<endl;
	}

	return m1;
}

void andian(Matrix a)
{
	g=0;
	int h=0;
	int min;
	int max=0;

	for(i=0; i<a.m; i++)
	{
		min=a.M[i*a.n];
		for(j=0; j<a.n; j++)
		{
			if(a.M[i*a.n+j]<min)
			{
				min=a.M[i*a.n+j];
				g=j;
				h=i;
			}
		}

        max=min;
		
		for(k=0; k<a.m; k++)
		{
	        if(a.M[k*a.n+g]>min)
			{
				max=a.M[k*a.n+g];
				h=k;
			}
		}
		if(min==max)
		{
			cout<<"鞍点: "<<min<<"   第"<<h+1<<"行"<<"第"<<g+1<<"列"<<endl;
			break;
		}
		if(i==a.m-1&&min!=max)
		{
			cout<<"该矩阵没有鞍点。"<<endl;
		}
	}
}

void main()
{
	Matrix Ma;
	Ma=createMatrix();
	andian(Ma);
}

⌨️ 快捷键说明

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