C program to add value in Spiral matrix Format

C program to add value in Spiral matrix Format



#include < stdio.h >
#include < conio.h >

void main()
{
int m[20][20],i,j;
int p,q,r,hr,r,c,cnt;
clrscr();
printf("\nEnter r & c :");
scanf("%d %d",&r,&c);
cnt = 1;
r = 0; p = 0;
hr = r - 1;
q = c - 1;
while ( r <=hr && p <= q )
{
i = r;
for(j=p;j <= q;j++)
{
m[i][j] = cnt++;
j = q;
for(i=r+1;i<=hr;i++)
{
m[i][j] = cnt++;
if( r != hr )
{
i = hr;
for(j=q-1;j>=p;j--)
m[i][j] = cnt++;
}
if ( p != q )
{
j = p;
for(i=hr-1;i>r;i--)
m[i][j] = cnt++;
}
}
}
r++;p++;
hr--;q--;
}
printf("\nSpirally filled matrix is\n");
for(i=0;i < r;i++)
{
for(j=0;j<c;j++)
{
printf("%4d",m[i][j]);
printf("\n");
}
}

No comments:

Post a Comment