0% ont trouvé ce document utile (0 vote)
64 vues9 pages

Tri par sélection en C pour débutants

Transféré par

zah era
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
64 vues9 pages

Tri par sélection en C pour débutants

Transféré par

zah era
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

N. B.

En C au lieu d’i=1 commencer i=0

1
Fonction TRiSelection

void permuter(int p1,int p2)

int aide=p1;

p1=p2;

p2=aide;

void tri_selection(int T[],int n)

int i,j,min;

for(i=0;i<n-1;i++)

min=i;

for(j=i+1;j<n;j++)

if(T[j]<T[min])

min=j;

if (min !=i)

permuter(T[i],T[min]);

2
}

printf("apres le tri : \n");

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

printf("%d\t",T[i]);

printf("\n");

3
4
La fonction

Exemple

#include <stdio.h>

#include <stdlib.h>

int main()

/* Déclarations */

int T[50]; /* tableau donné */

int N; /* dimension */

int i,j,tempo,indMin; /* indice courant */

/* Saisie des données */

printf("Dimension du tableau (max.50) : ");

scanf("%d", &N );

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

5
{

printf("Element %d : ", i);

scanf("%d", &T[i]);

/* Affichage avant le tri : */

printf("Contenu avant le tri : ");

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

printf("%4d", T[i]);

printf("\n");

/* Le tri par sélection : */

for (i = 0; i < N - 1; i++){

indMin = i;

for (j = i + 1; j < N; j++)

if (T[j] < T[indMin])

indMin = j;

if (indMin != i){

tempo = T[i];

T[i] = T[indMin];

T[indMin] = tempo;

6
/* Affichage après le tri : */

printf("\nContenu apres le tri : ");

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

printf("%4d", T[i]);

printf("\n");

printf("\n\n");

printf("Appuyez sur la touche Entree pour quitter");

system("pause");

/* Exécution :

Dimension du tableau (max.50) : 5

Element 0 : 45

Element 1 : 20

Element 2 : 6

Element 3 : 33

Element 4 : 2

Contenu avant le tri : 45 20 6 33 2

Contenu apres le tri : 2 6 20 33 45

*/

7
8
9

Vous aimerez peut-être aussi