.NET程序设计——语言基础05

一、任务

. 编写程序,找一找一个二维数组中的鞍点(即该位置上的元素值在行中最大,在该

列上最小。有可能数组没有鞍点)。要求: 

(1)二维数组的大小、数组元素的值在运行时输入;

(2)程序有友好的提示信息。

二、代码

 static void Andian()
        {
            int n,m,z;
            Console.WriteLine("请输入一个二维数组的行数:");
            n = int.Parse(Console.ReadLine());
            Console.WriteLine("请输入一个二维数组的列数:");
            m = int.Parse(Console.ReadLine());
            int[,] number = new int[n,m];
            Console.WriteLine("请输入该数组:");
            for (int i = 0; i < n; i++)
            {
                for(int j = 0; j <m; j++)
                {

                    number[i,j] = int.Parse(Console.ReadLine());
                   
                }
               
            }

            int row = 0, column = 0, k;
            int flog = 0;
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                {
                    if (column == j) continue;
                    else if (number[i,column] < number[i,j])
                        column = j;
                }
                for (k = 0; k < n; k++)
                {
                    if (row == k) continue;
                    else if (number[row,column] > number[k,column])//判断它是最小的
                        row = k;
                }
                if (row == i)
                {
                    flog = 1;
                    break;
                }
            }
            if (flog == 1)
                Console.WriteLine("该数组的鞍点是:" + number[row,column] + "  该鞍点在第" + (row  + 1) + "行,在第" + (column + 1) + "");
            else
                Console.WriteLine("该数组没有鞍点");
        }

三、结果截图

原文地址:https://www.cnblogs.com/Lizhichengweidashen/p/14903850.html