Red de conocimiento informático - Conocimiento informático - ¿Cómo transponer una matriz de 3x3 en lenguaje c?

¿Cómo transponer una matriz de 3x3 en lenguaje c?

#include<stdio.h>

int main()

{

int a[3][3];int *i;

for(i=*a;i<*a+9;scanf("%d",i++) );//matriz de entrada

void trans(int (*p)[3]); //Declarar la función de conversión

trans(a);

}

void trans(int(*p) [ 3])

{

int i,j,t,*k;

for(i=0;i<3;i++)

for(j=0;j<i;j++)

{

t=*(*(p+i)+j);*(*( p +i)+j)=*(*(p+j)+i);*(*(p+j)+i)=t;//intercambio de filas y columnas

}

for(i=0;i<3;i++,printf("/n"))

for(k=*(p+i);k<*(p+i ) +3;printf("%2d",*k++));//Matriz transpuesta de salida

}

< strong>

Información ampliada:

La sintaxis de la declaración for en C#:

for (inicialización; expresión booleana; variable de control de actualización)

declaración

Entre ellas , declaración Es el cuerpo del bucle for, que puede ser una declaración o un bloque de código encerrado entre llaves {}. [3]

Ejemplo 1:

static void Main(string[]args)

{

for(int i=0 ;i<10;i++)

{

Console.WriteLine(i);

Console.ReadLine();