#include <stdio.h>
int m_search(int matrix[][5], int n, int* i, int* j) {
while (*i < n && *j >= 0) {
if (matrix[*i][*j] == n) {
return 1;
}
if (matrix[*i][*j] > n)
(*j)--;
else
(*i)++;
}
return 0;
}
int main()
{
int matrix[5][5] = {{2, 3, 5, 7, 8},
{10, 13, 17, 18, 19},
{25, 26, 30, 37, 38},
{43, 46, 50, 51, 99},
};
int i = 0, j = 5;
if (m_search(matrix, 37, &i, &j))
printf("Found: i = %d j = %d\n", i, j);
else
printf("Not found\n");
return 0;
}
/*
run:
Found: i = 2 j = 3
*/