Comment faire un tri décroissant d'un vecteur en C ?

Fermé
kaouter3 Messages postés 1 Date d'inscription dimanche 8 janvier 2017 Statut Membre Dernière intervention 8 janvier 2017 - Modifié par NHenry le 8/01/2017 à 22:47
yg_be Messages postés 22723 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 - 8 janv. 2017 à 22:46
Bonjour,
J'arrive pas a trouver l'erreur
#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
 int T[15];
 int i=0, j=0, temp=0, n;
 do{
  printf ("précisez la taille de votre vecteur: ");
  scanf ("%d",&n);
 }while (n<=0||n>15);

for (i=0;i<=n;i++)
 {
  printf ("entrez un entier: ");
  scanf ("%d",&T[i]);
 }
 for (i=0;i<n-1;i++){
  for (j=i++;j<=n;j++){
   if (T[j]<T[i]){
    temp=T[i];
    T[i]=T[j];
    T[j]=temp;

}
  }
 }
 temp=T[0];
 printf ("le tri du vecteur: ");
 for (i=0;i<n;i++)
  printf ("%d \t",T[i]);
 return 0;
}


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

1 réponse

yg_be Messages postés 22723 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 1 476
Modifié par yg_be le 8/01/2017 à 22:54
bonsoir, au lieu de
for (j=i++;j<=n;j++)
, je suggère
for (j=i+1;j<n;j++)
cela fait deux erreurs de moins.
à toi de trouver les autres erreurs.
0