passing 2d arrays as parameters
not able to understand where the problem is ..
Determining if a mtrix has in it's diagonal - all zeros
Code:
#include<stdio.h>
int isdiagzero(int a[][10],int m,int n,int *i,int *j)
{
if(((*i)<m)&&((*j)<n))
{
if(a[*i][*j]!=0)
return 0;
else
{
isdiagzero(a,m,n,i++,j++);
}
}
return 1;
}
int readmatrix(int a[][10],int m ,int n)
{
int i,j;
printf("Enter the row and column ");
scanf("%d%d",&m,&n);
if((m==0)||(n==0))
return 0;
else
{
printf("\nEnter the matrix\n");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
}
}
void printmatrix(int a[][10],int m ,int n)
{
int i,j;
printf("the matrix\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%d",a[i][j]);
printf("\n");
}
}
int main()
{
int array[10][10];
int m,n;
if(readmatrix(array,m,n)==0)
printf("ERROR\n");
else
{
printmatrix(array,m,n);
if(isdiagzero(array,m,n,0,0)==0)
printf("Diagonal not zero !\n");
else
printf("Diagonal is zero !\n");
}
}
this program reads input as
Enter the row and column 3 3
0 1 1
1 0 1
1 1 0
the matrix
----here it gives exception----
i am not getting it --
please help me...