Home »
C programs »
C two-dimensional arrays programs
C program to read a matrix and print it's diagonals
#include <stdio.h>
#define MAXROW 10
#define MAXCOL 10
int main()
{
int matrix[MAXROW][MAXCOL];
int i,j,r,c;
printf("Enter number of Rows :");
scanf("%d",&r);
printf("Enter number of Cols :");
scanf("%d",&c);
printf("\nEnter matrix elements :\n");
for(i=0;i< r;i++)
{
for(j=0;j< c;j++)
{
printf("Enter element [%d,%d] : ",i+1,j+1);
scanf("%d",&matrix[i][j]);
}
}
/*check condition to print diagonals, matrix must be square matrix*/
if(r==c)
{
/*print diagonals*/
for(i=0;i< c;i++)
{
for(j=0;j< r;j++)
{
if(i==j)
printf("%d\t",matrix[j][i]); /*print elements*/
else
printf("\t"); /*print space*/
}
printf("\n"); /*after each row print new line*/
}
}
else
{
printf("\nMatrix is not a Square Matrix.");
}
return 0;
}
Output
First Run:
Enter number of Rows :2
Enter number of Cols :3
Enter matrix elements :
Enter element [1,1] : 1
Enter element [1,2] : 2
Enter element [1,3] : 3
Enter element [2,1] : 4
Enter element [2,2] : 5
Enter element [2,3] : 6
Matrix is not a Square Matrix.
Second Run:
Enter number of Rows :4
Enter number of Cols :4
Enter matrix elements :
Enter element [1,1] : 1
Enter element [1,2] : 2
Enter element [1,3] : 3
Enter element [1,4] : 4
Enter element [2,1] : 5
Enter element [2,2] : 6
Enter element [2,3] : 7
Enter element [2,4] : 8
Enter element [3,1] : 9
Enter element [3,2] : 10
Enter element [3,3] : 11
Enter element [3,4] : 12
Enter element [4,1] : 13
Enter element [4,2] : 14
Enter element [4,3] : 15
Enter element [4,4] : 16
1
6
11
16
C Two-dimensional Arrays Programs »