二维数组找鞍点

鞍点定义:在一个矩阵中,每一行的最大值是其所在的每一列的最小值。
下面为代码分析:
#include<stdio.h>
int main()
{
int a[3][3],i,j;
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);//用for循环定义一个3x3的二维数组。
int max,c,t,min;//用max 来存储行的最大值和列的最大值,min为后的判断条件。
min=0;
for(i=0;i<=2;i++)
{
max=a[i][0];//讲每一行的第一个元素赋给max。
t=0;
for(j=0;j<=2;j++)
{
if(max<a[i][j])
{
max=a[i][j];
t=j;//t用来存储该行最大值所在的列。
}
}//用for循环求出没一行的最大值。
c=1;
for(j=0;j<=2;j++)
{
if(max>a[j][t])
{
c=0;
break;
}
}//第二个for循环用来判断是否为该列的最小值。

if(c1)
{
printf(“鞍点是%d\n”,max);
min++;//min为判断是否有鞍点,若有鞍点,自动加1。
}
}
if(min
0)
printf(“没有鞍点\n”);
getchar();
getchar();

return 0;
}
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值