This Program prints the numbers in given array(Row-Major Order)in Spiral order.       Ex: Order Is 3*4  11 12 13 1415 16 17 1819 20 21 2223 24 25 26Spiral Order Of Matrix is 11 12 13 14 18 22 26 25 24 23 19 15 16 17 21 20<br /># include<stdio.h><br />main()<br />{<br />int a[20][20],i,j,n,m,p,q,k=0;<br />printf(\"
\n Enter Order Of matrix\"
);<br />scanf(\"
%d%d\"
,&m,&n);<br />for(i=1;i<=m;i++)<br />for(j=1;j<=n;j++)<br />scanf(\"
%d\"
,&a[i][j]);<br /> p=m;<br />q=n;<br />i=j=1;<br /> while(k<p*q)<br />{        for(;j<=n&&k<p*q;j++)  <br />{   printf(\"
%d \"
,a[i][j]);<br />k++;<br />}     j--; <br />i++;<br />for(;i<=m && k<p*q;i++)<br />{<br />printf(\"
%d \"
,a[i][j]);<br />k++;<br />}<br />i--;<br />j--; <br />for(;j>=i-m+1 && k<p*q;j--)<br />{<br />printf(\"
%d \"
,a[i][j]);<br />k++;<br />} <br />j++;<br />i--;<br />for(;i>1 && k<p*q;i--)<br />{ <br />printf(\"
%d \"
,a[i][j]);<br />k++;<br />}     <br />if(k<p*q)<br />{<br />j++;   i++;   n--;   m--;    }}}<br />
Spiral array

Spiral array

  • 1.
    This Program printsthe numbers in given array(Row-Major Order)in Spiral order. Ex: Order Is 3*4 11 12 13 1415 16 17 1819 20 21 2223 24 25 26Spiral Order Of Matrix is 11 12 13 14 18 22 26 25 24 23 19 15 16 17 21 20<br /># include<stdio.h><br />main()<br />{<br />int a[20][20],i,j,n,m,p,q,k=0;<br />printf(\" \n Enter Order Of matrix\" );<br />scanf(\" %d%d\" ,&m,&n);<br />for(i=1;i<=m;i++)<br />for(j=1;j<=n;j++)<br />scanf(\" %d\" ,&a[i][j]);<br /> p=m;<br />q=n;<br />i=j=1;<br /> while(k<p*q)<br />{ for(;j<=n&&k<p*q;j++) <br />{ printf(\" %d \" ,a[i][j]);<br />k++;<br />} j--; <br />i++;<br />for(;i<=m && k<p*q;i++)<br />{<br />printf(\" %d \" ,a[i][j]);<br />k++;<br />}<br />i--;<br />j--; <br />for(;j>=i-m+1 && k<p*q;j--)<br />{<br />printf(\" %d \" ,a[i][j]);<br />k++;<br />} <br />j++;<br />i--;<br />for(;i>1 && k<p*q;i--)<br />{ <br />printf(\" %d \" ,a[i][j]);<br />k++;<br />} <br />if(k<p*q)<br />{<br />j++; i++; n--; m--; }}}<br />