Bonjour à tous, j'ai eu l'idée de créer un programme qui récupère les X notes des Y élèves d'une classe, et les tries de manière croissante.

Je souhaiterais donc trouver une façon de trier par ordre croissant les valeurs du tableau "note[i][j]". Je me suis basé sur un algorithme trouvé sur le net pour trier ce dernier, cependant juste les notes du premier élève sont triés. Le reste de notes reste dans l'ordre ou je l'ai rentré, et j'avoue ne pas comprendre pourquoi. Voici mon algorithme.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
int main() {
 
int nombreEleve, nombreNote, i = 0, j=0, tri = 1;
double note[100][100];
 
 
printf("Combien d'eleves : ");
    scanf("%d", &nombreEleve);
 
    printf("Combien de notes par eleve : ");
    scanf("%d", &nombreNote);
 
 
 
for (i=0; i<nombreEleve; i++)
    {
        for (j=0; j<nombreNote; j++)
        {
            printf("Eleve %d - note %d ", i, j);
            scanf("%lf", &note[i][j]);
            sommeNote += note[i][j];
            nombredesnote++;
 
        }
}
 
 
 
for (i=0; i<nombreEleve; i++)
    {
        printf("tri = %d\n\n", tri);
 
        while(tri == 1)
        {
            tri = 0;
 
            for (j=0; j<nombreNote-1; j++)
            {
                if(note[i][j]>note[i][j + 1])
                {
                    temp = note[i][j];
                    note[i][j]= note[i][j + 1];
                    note[i][j + 1] = temp;
                    tri=1;
 
                }
            }
        }
    }