Bonjour,
je bloque sur mon programme qui demande à l'utilisateur une série de 20 chiffres maximum et qui les trie en fonction du tri choisi! je bloque sur les tri surtout pour le tri bulle
quelqu'un aurait la solution à mon problème merci
#include <stdio.h>
#include <stdlib.h>
#define MAX 20
void main (void)
{
int v[MAX],cpt,i,j,limite,tri,n,temp;
printf("entrez la limite de nombre a introduire\t");
scanf("%d",&limite);
for(cpt=0;cpt<limite;cpt++)
{
printf("Introduire le %d e element du vecteur :\t", cpt+1);
scanf("%d",&v[cpt]);
}
cpt=limite;
printf("voici les tris possibles dans ce programme\n\t");
printf("tri par extraction (1)\n\t");
printf("tri par insertion (2)\n\t");
printf("tri bulle (3)\n\t");
do{
printf("choisissez votre tri\n");
scanf("%d",&tri);
printf("numero invalide choississez un tri de 1 a 3\n\t");
}while (( tri < 1) || (tri > 3));
switch( tri )
{
case 1: printf("vous avez choisi le tri par extraction");
n=0;
i=0;
while(i<n)
{
j=i+1;
while(j<= n+1)
{
if(v[i] > v[j])
{
v[i]=v[j];
}
j=j+1;
}
i=i+1;
}
for(i=0;i<10;i++)
{
printf("%d\t",v[i]);
}
break;
case 2: printf(" vous avez choisi le tri par insertion");
i=1;
while(i<10)
{
temp=v[i];
j=i-1;
while(j>=0&&v[j]>temp)
{
v[j+1]=v[j];
j=j-1;
}
v[j+1]=temp;
i++;
}
for(i=0;i<10;i++)
{
printf("%d\t",v[i]);
}
break;
case 3: printf("vous avez choisi le tri bulle");
break;
}
}
Configuration: Windows XP
Firefox 2.0.0.9