c语言判断鞍点函数 c语言中如何求鞍点( 二 )


int i,j;//循环变量
//人机交互输入数据
printf("Input m,n:\n");
scanf("%d,%d",m,n);
printf("Input matrix:\n" );
for(i=0;im;i++)
{
for(j=0;jn;j++)
scanf("%d",a[i][j]);
}
FindSaddlePoint(a,m,n);
system("pause");
}
//函数功能:输入矩阵数组、行数和列数,判断是否存在鞍点并输出结果
void FindSaddlePoint(int a[][20], int m, int n)
{
int i,j,k;//循环变量
int b,c,d;//储存下标:b和d储存最大值的下标,d储存最小值的下标
int flag=0;//判断是否有鞍点:值为1则有,值为0则无
int max,min;//每行中的最大值和每列中的最小值
//第一层循环遍历每一行
for(i=0;im;i++)
{
//先该行中的第一个数赋值给最大值并保存其位置
max=a[i][0];
b=i;
d=0;
//找出每一行中的最大值的值及位置
for(j=0;jn;j++)
{
if(maxa[i][j])
{
max=a[i][j];
b=i;
d=j;
}
}
//先将找到的最大值赋值给最小值,作为初值并存储下标(由于列是一样的所以只需要储存行的位置即可)
min=max;
c=b;
//从找到的最大值中的那一列找该列的最小值并存储其位置
for(k=0;km;k++)
{
if(mina[k][d])
{
min=a[k][d];
c=k;
}
}
//判断最大值和最小值的位置是否相同
if(b==c)
{
flag=1;
break;
}
}
//输出语句
if(flag==1)
printf("a[%d][%d] is %d\n",b,d,max);
else
printf("No saddle point!\n");
}
【c语言判断鞍点函数 c语言中如何求鞍点】关于c语言判断鞍点函数和c语言中如何求鞍点的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

推荐阅读