【C语言初学者周冲刺计划】5.2一个二维数组中的鞍点

编程入门 行业动态 更新时间:2024-10-13 04:21:12

【C语言<a href=https://www.elefans.com/category/jswz/34/1769900.html style=初学者周冲刺计划】5.2一个二维数组中的鞍点"/>

【C语言初学者周冲刺计划】5.2一个二维数组中的鞍点

目录

1解题思路:

2代码:

3运行代码结果:

4总结:


1解题思路:

解题流程如下:
对每行进行遍历。先找到每行的最大值,然后再确定该最大值是否是所在列的最小值,若满足,则为鞍点,遍历停止;否则,继续,若遍历完所有行之后依旧未找到,则表示该二维矩阵无鞍点。

对这类问题可以进行拆解分析,先找出行最大,再去找列最小;除此之外会灵活运用二维数组;

2代码:

#include<stdio.h>
int main()
{int a[100][100],i,j,x,y,k=0;printf("请输入第几行第几列的二维数组\n");scanf("%d%d",&x,&y);printf("\n请对%d行%d列的二维数组输入具体数值:\n",x,y);for(i=0;i<x;i++){for(j=0;j<y;j++){scanf("%d",&a[i][j]);}}printf("\n\n");for(i=0;i<x;i++){for(j=0;j<y;j++){printf("%d\t",a[i][j]);}printf("\n");}int max[x],min[y];for(i=0;i<x;i++) max[i]=a[i][0];for(j=0;j<y;j++) min[j]=a[0][j];for(i=0;i<x;i++){for(j=0;j<y;j++){if(max[i]<=a[i][j])max[i]=a[i][j];if(min[j]>=a[i][j])min[j]=a[i][j];}}for(i=0;i<x;i++){for(j=0;j<y;j++){if(max[i]==min[j]){printf("鞍点为:a[%d][%d]=%d",i+1,j+1,max[i]);k++;}}}if(k==0)  printf("该二维数组不存在"); return 0;
}

以后我会加上行注释,这次先拆解讲解:

这是对二维数组进行规定行数和列数,然后对其每个位置进行赋值

#include<stdio.h>
int main()
{int a[100][100],i,j,x,y,k=0;printf("请输入第几行第几列的二维数组\n");scanf("%d%d",&x,&y);printf("\n请对%d行%d列的二维数组输入具体数值:\n",x,y);for(i=0;i<x;i++){for(j=0;j<y;j++){scanf("%d",&a[i][j]);}}printf("\n\n");for(i=0;i<x;i++){for(j=0;j<y;j++){printf("%d\t",a[i][j]);}printf("\n");}

这是先赋初值,然后循环进行比较大小

​int max[x],min[y];for(i=0;i<x;i++) max[i]=a[i][0];for(j=0;j<y;j++) min[j]=a[0][j];for(i=0;i<x;i++){for(j=0;j<y;j++){if(max[i]<=a[i][j])max[i]=a[i][j];if(min[j]>=a[i][j])min[j]=a[i][j];}}​

最后部分是判断其是否含有鞍点

	for(i=0;i<x;i++){for(j=0;j<y;j++){if(max[i]==min[j]){printf("鞍点为:a[%d][%d]=%d",i+1,j+1,max[i]);k++;}}}if(k==0)  printf("该二维数组不存在");

3运行代码结果:

 

4总结:

如果C语言有不懂细节,建议看看【C语言初学者周冲刺计划】5.1C语言知识点小总结-CSDN博客的内容

感谢各位的阅读,以上就是“C语言怎么一个二维数组中的鞍点”的内容了,经过本文的学习后,相信大家对C语言这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是CSDN杰克尼,小编将为大家推送更多相关知识点的文章,欢迎关注!

更多推荐

【C语言初学者周冲刺计划】5.2一个二维数组中的鞍点

本文发布于:2023-11-16 19:00:31,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1632287.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:初学者   组中   语言   计划

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!