The Program in C to extract the maximum and the minimum elements from a matrix is given below:
#include <stdio.h>
void find_max_min(int *matrix, int rows, int cols, int *max, int *min) {
*max = matrix[0];
*min = matrix[0];
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
if (matrix[i*cols + j] > *max) {
*max = matrix[i*cols + j];
}
if (matrix[i*cols + j] < *min) {
*min = matrix[i*cols + j];
}
}
}
}
int main() {
int rows, cols, i, j;
printf("Enter the number of rows: ");
scanf("%d", &rows);
printf("Enter the number of columns: ");
scanf("%d", &cols);
int matrix[rows][cols];
printf("Enter the elements of the matrix: \n");
for (i = 0; i < rows; i++) {
for (j = 0; j < cols; j++) {
scanf("%d", &matrix[i][j]);
}
}
int max, min;
find_max_min((int*)matrix, rows, cols, &max, &min);
printf("Maximum element: %d\n", max);
printf("Minimum element: %d\n", min);
return 0;
}
Output:
Enter the number of rows: 2
Enter the number of columns: 2
Enter the elements of the matrix:
12
56
43
12
Maximum element: 56
Minimum element: 12
Pro-Tips💡
This program prompts the user to enter the number of rows and columns of the matrix, and then the elements of the matrix.
It then uses the find_max_min function defined earlier to find the maximum and minimum elements in the matrix and prints the results.
This program uses a 2-D array to store a matrix which is typically stored in a row-major order.
Learn C-Sharp ↗
C-sharp covers every topic to learn about C-Sharp thoroughly.
Learn C Programming ↗
C-Programming covers every topic to learn about C-Sharp thoroughly.
Learn C++ Programming↗
C++ covers every topic to learn about C-Sharp thoroughly.