什么是鞍点?????

鞍点就是在一个二维数组中,某一个数在该行中最大,然而其在该列中又是最小的数,这样的数称为鞍点。

昨天突然在书上看到这样的一道题,就自己尝试着写了一个找出一个二维数组中的鞍点。

好了,废话不多说,代码奉上。。。。。。。。。。。。

 /*这个程序检测的是一个二维数组中是否存在鞍点,
所谓的鞍点即是在这个二维数组中,某一个位置上的
元素在该行上最大,该列上最小*/
#include<stdio.h>
#define M 3
#define N 3 //定义行和列的大小 int main()
{
int a[M][N];
int i, j;
int temp = , temp1[M], temp2[N];
printf("请根据提示输入二维数组。\n");
//输入数组
for (i = ;i<M;i++)
for (j = ;j < N;j++)
{
printf("a[%d][%d]=", i, j);
scanf_s("%d", &a[i][j]);
}
//输出数组
for (i = ;i < M;i++)
{
for (j = ;j < N;j++)
printf("%d\t", a[i][j]);
printf("\n");
}
//处理数组
for (i = ;i < M;i++)
{
temp1[i] = a[i][]; //给每行的最大值赋一个初始值
temp2[i] = a[][i]; //给每列的最小值赋一个初始值
for (j = ;j < N;j++)
{
if (temp1[i] < a[i][j]) temp1[i] = a[i][j];
if (temp2[i] > a[j][i]) temp2[i] = a[j][i];
}
}
for (i = ;i < M;i++)
{
for (j = ;j < N;j++)
{
if (a[i][j] == temp1[i] && a[i][j] == temp2[j])
printf("这个二维数组的鞍点为%d\n", a[i][j]);
else
temp = ; }
}
if (temp == )
printf("这个数组中没有鞍点.\n");
}

还是一样的话,弄上本代码是为了和大家一起交流学习。

欢迎大家的讨论和提问。

C语言程序,找出一个二维数组的鞍点。的更多相关文章

  1. C语言复习---找出一个二维数组的鞍点

    前提: 求任意的一个m×n矩阵的鞍点——鞍点是指该位置上的元素在该行上为最大.在该列上为最小, 矩阵中可能没有鞍点,但最多只有一个鞍点. m.n(<=m<=.<=n<=)及矩阵 ...

  2. c语言题目:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点

    //题目:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小.也可能没有鞍点. // #include "stdio.h" #include <stdli ...

  3. 找出一个二维数组中的"鞍点",即该位置上的元素在该行中最大,在该列中最小(也可能没有"鞍点"),打印有关信息.(提示:注意特殊情况:没鞍点或多个鞍点)

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { ][] = {}; ;i < ...

  4. 如何用一个for循环打印出一个二维数组

    思路分析: 二维数组在内存中默认是按照行存储的,比如一个二维数组{{1,2,3,},{4,5,6}},它在内存中存储的顺序就是1.2.3.4.5.6,也就是说,对于这6个数组元素,按照从0到5给它们编 ...

  5. 计算机二级-C语言-程序设计题-190119记录-求出一个二维数组每一列的最小值。

    //编写一个函数:tt指向一个M行N列的二维数组,求出二维数组每列中最小的元素,并依次放入pp所指的一维数组中.二维数组中的数在主函数中赋予. //重难点:求出的是每一列的最小值,这里要注意,学会简化 ...

  6. C#编写程序,找一找一个二维数组中的鞍点

    编写程序,找一找一个二维数组中的鞍点(即该位置上的元素值在行中最大,在该列上最小.有可能数组没有鞍点).要求: 1.二维数组的大小.数组元素的值在运行时输入: 2.程序有友好的提示信息. 代码: us ...

  7. [CareerCup] 13.10 Allocate a 2D Array 分配一个二维数组

    13.10 Write a function in C called my2DAlloc which allocates a two-dimensional array. Minimize the n ...

  8. 论C语言中二级指针和二维数组之间的区别

    刚开始学习C语言的时候,觉得一个数组可以定义一个一级指针去访问,想当然的就觉得可以定义一个二级指针去访问二维数组.很显然这是错误的. 我们来看看C语言的数组在内存中的存储方式. 实际上C语言中的数组, ...

  9. <转载>c++中new一个二维数组

    原文连接 在c++中定义一个二维数组时有多种方式,下面是几种定义方式的说明:其中dataType 表示数据类型,如int  byte  long... 1.dataType (*num)[n] = n ...

随机推荐

  1. CUDA C Programming Guide 在线教程学习笔记 Part 5

    附录 A,CUDA计算设备 附录 B,C语言扩展 ▶ 函数的标识符 ● __device__,__global__ 和 __host__ ● 宏 __CUDA_ARCH__ 可用于区分代码的运行位置. ...

  2. Windows 忘记密码

    能进入windows,以前保存的凭据,但是不知道啥. windows下进入cmd net user administrator abc123 这样可以重置密码

  3. as3 程序域

    问题我要在应用程序中载入其他域的swf文件,并且允许它访问程序中的 ActionScript 解决办法使用flash.system.Security.allowDomain( ), flash.sys ...

  4. vue - process.env 定义

    1.官方解释:process 对象是一个 global (全局变量),提供有关信息,控制当前 Node.js 进程.作为一个对象,它对于 Node.js 应用程序始终是可用的,故无需使用 requir ...

  5. mysql 数据备份及数据迁移

    一.使用mysql数据导出进行备份时,会备份整个表的数据,有时候只想备份一部分数据,这个时候可以使用如下方法: 1. 使用insert into 和 select结合: insert into tal ...

  6. SecureCRT去除关闭Session的确认窗口提示

  7. 'Microsoft.VisualStudio.Editor.Implementation.EditorPackage' package did not load correctly

    Visual Studio 2012 Ultimate Removing "C:\Users\UserName\AppData\Local\Microsoft\VisualStudio\11 ...

  8. 用R进行统计学分析

    1.基本统计 summary函数:R中的summary函数根据输入的类提供输入的摘要.该函数根据输入对象的类调用各种函数.返回值也取决于输入对象.例如,如果输入是一个由数字数据组成的向量,它将为数据提 ...

  9. java 用volatile和不用volatile的区别

    在当前的Java内存模型下,线程可以把变量保存在本地内存(比如机器的寄存器)中,而不是直接在主存中进行读写.这就可能造成一个线程在主存中修改了一个变量的值,而另外一个线程还继续使用它在寄存器中的变量值 ...

  10. EasyUI查询

    <script type="text/javascript"> <!-- js --> function search_xxx() { var search ...