天天看点

C++马鞍点源代码

 #include<iostream.h>

void main()

{

 int M[5][5];

 int i,j,k,t,m,n,flag;

 m=n=0;

 cout<<"请输入M[5][5]的所有元素:"<<endl;

 for(i=0;i<5;i++)

 {

  for(j=0;j<5;j++) cin>>M[i][j];

 }

 cout<<"输入的M[5][5]为:"<<endl;

 for(i=0;i<5;i++)

 {

  for(j=0;j<5;j++) cout<<"  "<<M[i][j];

  cout<<endl;

 }

     for(i=0;i<5;i++)

  {   t=M[i][0];

      flag=1;  //设flag为鞍点标志

  for(j=1;j<5;j++)//查找第i行的最小元素

  {

   if(M[i][j]<t)

   { t=M[i][j];

    m=i; n=j; //第i行的最小点下标

   }

  }

  //判断M[m][n]是否在当前列最大

     for(k=0;k<5;k++)

   if(M[m][n]<M[k][n]) flag=0;

  if(flag) cout<<"鞍点M"<<"["<<m<<"]["<<n<<"]="<<M[m][n]<<endl;

 }

 cout<<endl;

}

c++

继续阅读