您的位置:首页 > 其它

求二维数组的鞍点

2016-09-01 11:19 106 查看
鞍点是指数组中本行最大,本列最小的数值。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace shuzuandian
{
class Program
{
static void Main(string[] args)
{
const int m = 5;
const int n = 4;
int[,] a = new int[5, 4];
int i, j, k, p, flag, adgs=0;
Random random = new Random();
adgs = 0;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
a[i, j] = random.Next(1, 100);//随机生成数组
}
}
for (i = 0; i < m; i++)
{
Console.WriteLine();
for (j = 0; j < n; j++)
{
Console.Write("{0} ", a[i, j]);
}
}

for (i = 0; i < m; i++)
{
flag = 1;
p = 0;
for (j = 1; j < n; j++)
{
if (a[i, j] > a[i, p])
{
p = j;//找到行中最大的值
}
}
for (k = 0; k < m;k++ )
{
if(a[i,p]>a[k,p]){//是否为列中最小的值
flag = 0;
break;
}
}
if(flag==1){
adgs = adgs + 1;
Console.WriteLine("\n第{0}鞍点的位置是({1},{2})",adgs,i+1,p+1);
}
}
if(adgs==0){
Console.WriteLine("\n 无鞍点!");
}
Console.ReadKey();
}
}
}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  二维数组 鞍点