二维数组矩阵找鞍点

什么是鞍点,这是我们要首要理解的东西,(当然不难)那就是一个数即是行最大值,也是列最大值。

int a[3][4] = { { 1, 94, -10, 218 },
                    { 3, 119, 10, -83 },
                   { 45, 16, 44, -99 } }; 这里的218就是一个鞍点。


#include <stdio.h>

int
main(int argc, const char *argv[]) { int a[3][4] = { { 1, 94, -10, 218 }, { 3, 119, 10, -83 }, { 45, 16, 44, -99 } }; int i = 0, j, row = 0, line = 0, l = 0; int max, flag = 1; for (i = 0; i<3; i++) { for (j = 0; j<4; j++) { if (a[row][line]< a[i][j]) { row = i; line = j; } } // 取出行最大值; max = a[row][line]; for (l = 0; l < 3; l++) { if (max<a[l][line]) { flag = 0; break; } } if (flag) { printf("%d\n", a[row][line]); } row = i; line = 0; flag = 1; } getchar(); return 0; }

 

posted @ 2016-09-21 13:02  张飞online  阅读(403)  评论(0编辑  收藏  举报