Red de conocimiento informático - Computadora portátil - C La forma de matriz cuadrada espiral digital

C La forma de matriz cuadrada espiral digital

1. A continuación se muestra una matriz cuadrada en espiral de orden 5*5. Programe para imprimir (en dirección espiral en el sentido de las agujas del reloj) una matriz cuadrada de orden n*n (n<=15) de este formulario, n se ingresa desde el teclado.

┌ 1 ?2 ?3 ?4 ?5 ┐

│ 16 17 18 19 6 │

│ 15 24 25 20 7 │

│ 14 23 22 21 8 │

└ 13 12 11 10 9 ┘

2. Programa de muestra: #include?int?get(int?x,?int?y,?int?lt,?int?n)

{

if(x?==?0)

retorno?lt+y;

else?if(y?==?0)

retorno?lt+4*(n -1)-x;

else?if(y?==?n-1)

return?lt+n+x-1;

else?if(x? ==?n-1)

retorno?lt+3*(n-1)-y;

otro

retorno?get(x-1) ,?y-1,?lt+4*(n-1),?n-2);

}

int?main(void)

{

int?n,?i,?j;

scanf("%d",? &n);

for(i?=? 0;?i?

for(j?=?0;?j?

printf("%2d?",?get(i,?j,?1,?n));

putchar('\n');

}

¿volver?