用c#求马鞍数,各位大侠帮忙看下哪里有错误,怎么就的不出来结果呢

来源:百度知道 编辑:UC知道 时间:2024/06/30 00:25:58
public static void maan()
{
int i, j, m, jishu1=0,jishu2=0, maanshu=0;
int[,] shuzu = new int[10, 10];

Random a = new Random();

for (i = 0; i < 10; i++)
for (j = 0; j < 10; j++)
shuzu[i, j] = a.Next (10,100);
Console.WriteLine(shuzu[5,4]);/*验证是否存放了随机数*/

for (i = 0; i < 10; i++)
{
for (j = 0; j < 10; j++)
if (maanshu < shuzu[i, j])
{
maanshu = shuzu[i, j];
jishu1 = j;

}

for (m = 0; m < 10; m++)
if (maanshu < shuzu[m, jishu1])
{
jishu2 = 0;
break;
}

if

第一:不是每个矩阵都有马鞍数的,马鞍数也许也有好几个的
第二:下面这个要改
for (i = 0; i < 10; i++)
{
for (j = 0; j < 10; j++)
if (maanshu < shuzu[i, j])
{
maanshu = shuzu[i, j];
jishu1 = j;

}
必须在每行开始为maanshu赋值,因为要求得行的最小值,因此maanshu要赋比数组里数都要大的数,而且if里面的条件也要改,条件应该是shuzu[i,j]比maanshu小的时候,就把shuzu[i,j]赋值给maanshu,要改为:
for (i = 0; i < 10; i++)
{
maanshu=100;
for (j = 0; j < 10; j++)
if (shuzu[i, j]<maanshu)
{
maanshu = shuzu[i, j];
jishu1 = j;
}
………………

你得算法有问题,第二个for语句干嘛的?
你找行和列的最大值有啥用?