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 104 105 106 107 108 109 110 111 112 113 114 115
| //---------------
#include <stdio.h>
#pragma hdrstop
#include"prototype.h"
#include <tchar.h>
//---------------------------------------------------------------------------
#pragma argsused
struct membre { char nom[50]; int age;};
struct membre *equipe;
struct membre *index[10];
int nbmembre = 0, i;
char lettre;
int _tmain(int argc, _TCHAR* argv[])
{
equipe = malloc(sizeof(struct membre) * 10);
do
{
printf("tapez a pour ajouter\n\n");
printf("tapez b pour afficher le tableau original\n\n");
printf("tapez c pour afficher le tableau des index\n\n");
printf("tapez d pour trier par par nom\n\n");
printf("tapez e pour sortir\n\n");
scanf("%s",&lettre);
printf("\n\n");
if (lettre == 'a')
{
ajouter();
}
if (lettre == 'b')
{
afficher_ori();
}
if (lettre == 'c')
{
afficher_index();
}
if (lettre == 'd')
{
trier_ite();
}
}while ( (nbmembre < 9) && (lettre != 'e') ) ;
free(equipe);
system("pause");
return 0;
}
void ajouter()
{
printf("entrez le nom du joueur\n\n");
scanf("%s",&equipe[nbmembre].nom);
printf("\n\n");
printf("entrez l'age du joueur\n\n");
scanf("%d",&equipe[nbmembre].age);
printf("\n\n");
index[nbmembre]=&equipe[nbmembre];
nbmembre++;
}
void afficher_ori()
{
for (i = 0; i < nbmembre; i++)
{
printf("le nom du joueur n° %d est %s et son ages est de %d\n\n",i,equipe[i].nom,equipe[i].age);
}
}
void afficher_index()
{
for (i = 0; i < nbmembre; i++)
{
printf("le joueur numero %d s'appelle %s et est age de %d\n\n",i,index[i]->nom,index[i]->age);
printf("\n\n");
}
}
void trier_ite()
{
int n;
int inter, flag;
flag =0;
n = nbmembre;
while ( (n>=2) && (flag) )
for (i = 0; i < n; i++)
{
if ( (index[i]->age) > (index[i+1]->age) )
{
inter = index[i];
index[i] = index[i+1];
index[i+1] = inter;
flag = 1;
}
}
n--;
} |
Partager