printf matrix par une fonction en c
// macros de type constante pour le nombre des lignes et de colonnes
#define lin 3
#define col 4
#include<stdio.h>
//definir un type de matrice avec un nombre inconnu de lignes et colonnes
typedef int matrice[lin][col];
//une pemiere fonction d’attribuer des valeur de 1 à dans une matrice en deux dimensions
void attribution1(matrice a)
{
int k=1,i,j;
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
{
a[i][j]=k;
k++;
}
}
//autre fonction d’attribuer des valeurs de 1 à 12 dans une matrice en deux dimensions
void attribution2(matrice a)
{
int i,j;
for(i=0;i<lin;i++)
for(j=0;j<col;j++)
a[i][j]=(i*col)+j+1;
}
//l’affichage du premier et du dernier element d’une matrice
void afis_prm_ult(matrice a)
{
printf("\nLe premier element est: %d",a[0][0]);
printf("\nLe dernier element est: %d\n",a[lin-1][col-1]);
}
//l’affichage d’une matrice en deux dimensions sous la forme d’un tableau
void affichage(matrice a, char c)
{
int i,j;
printf("\n");
printf("\nMatrice %c est:\n",c);
for(i=0;i<lin;i++)
{
for(j=0;j<col;j++)
printf("%4d",a[i][j]);
printf("\n");
}
}
//l’echange des deux lignes lues d’une matrice
void echanger(matrice a)
{
int x,y,j,aux;
printf("\nEntrer la ligne pour l’echange: ");
scanf("%d",&x);
printf("entrer l’autre ligne pour l’echange : ");
scanf("%d",&y);
/* On fait l’echange ds lignes x et y element pat
Element, toute la colonne. */
for(j=0;j<col;j++)
{
aux=a[x-1][j];
a[x-1][j]=a[y-1][j];
a[y-1][j]=aux;
}
}
// fonction principale d'exécuter
void main()
{
matrice a,b;
attribution1(a);
attribution2(b);
afis_prm_ult(a);
affichage(a,'A');
affichage(b,'B');
echanger(a);
affichage(a,'A');
getchar();
int k;
scanf("%d", k);
}