1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
| #include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
#include "functions.h"
#include "voidFun.h"
#include "voidFun2.h"
#include "void25.h"
#include "time.h"
#define MYSTMAX 100
#define MYSTMIN 0
void tab2DTri()
{
int i, j, k= 0, n, m, buff;
int **tab2D = malloc(n*sizeof(int*));
int **tab2Tri = malloc(n*sizeof(int*));
int *tab1Tri = malloc((n*sizeof(int)*(m*sizeof(int))));
srand(time(NULL));
printf("Veuillez definir les dimensions du tableau a 2 dim\n");
printf("Nombre de Lignes (max 10)? ");
scanf("%d", &n);
printf("\nNombre de Colonnes (max 10)? ");
scanf("%d", &m);
printf("\n");
for (i = 0; i < n; i ++)
{
tab2D[i] = malloc(m*sizeof(int));
}
for (i = 0; i < n; i ++)
{
tab2Tri[i] = malloc(m*sizeof(int));
}
for (i = 0; i < n; i ++)
{
for (j = 0; j < m; j ++)
{
tab2D[i][j] = rand()%(100 + 0 + 1) + 0;
}
}
printf("\nVoici le tableau generer aleatoirement\n");
affiche2D(tab2D,n,m);
for (i = 0; i < n; i ++)
{
for (j = 0; j < m; j ++)
{
tab1Tri[k] = tab2D[i][j];
k++;
}
}
for (i = 0; i < n*m; i ++)
{
for (j = 0 ; j < n*m - 1 - i; j ++)
{
if (tab1Tri[j+1] < tab1Tri[j])
{
buff = tab1Tri[j];
tab1Tri[j] = tab1Tri[j+1];
tab1Tri[j+1] = buff;
}
}
}
k = 0;
for (i = 0; i < n; i ++)
{
for (j = 0; j< m; j ++)
{
tab2Tri[i][j] = tab1Tri[k];
k ++;
}
}
printf("Voici maintenant le moment que vous attendiez tous, le tableau trier !\n");
affiche2D(tab2Tri,n, m);
free(tab2D);
free(tab2Tri);
free(tab1Tri);
}
void affiche2D(int **tab,int n,int m)
{
int i, j;
for (i = 0; i < n; i ++)
{
for (j = 0; j < m; j ++)
{
printf("%3d", tab[i][j]);
}
printf("\n");
}
printf("\n\n");
} |
Partager