The Program in C to print all those elements of a matrix are not diagonal elements is given below
#include <stdio.h>
void print_non_diagonal(int *matrix, int rows, int cols) {
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
if (i != j) {
printf("%d ", 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]);
}
}
printf("Non-diagonal elements of the matrix: \n");
print_non_diagonal((int*)matrix, rows, cols);
return 0;
}
Output:
Enter the number of rows: 2
Enter the number of columns: 2
Enter the elements of the matrix:
67
88
99
13
Non-diagonal elements of the matrix:
88 99
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 function print_non_diagonal which uses nested loops to iterate through the elements of the matrix and it checks if the current element is not on the diagonal (i.e, i is not equal to j) and if it’s true then it prints the element.
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.