Structure et tri en langage C
Fermé
netglobe
Messages postés
2
Date d'inscription
lundi 19 novembre 2007
Statut
Membre
Dernière intervention
16 janvier 2008
-
14 janv. 2008 à 21:05
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 16 janv. 2008 à 19:29
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 16 janv. 2008 à 19:29
A voir également:
- Structure et tri en langage C
- Langage ascii - Guide
- Tri excel - Guide
- Langage binaire - Guide
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Logiciel tri photo gratuit - Guide
3 réponses
netglobe
Messages postés
2
Date d'inscription
lundi 19 novembre 2007
Statut
Membre
Dernière intervention
16 janvier 2008
1
16 janv. 2008 à 10:35
16 janv. 2008 à 10:35
j'ai avancé dans l'exercice mais je veux bien quelqu'un qui m'aide à le finir.
ET Merci.
#include<stdio.h>
#include<conio.h>
struct date
{
int jour;
int mois;
int annee;
};
struct joueur
{
char nom[30];
int age;
int nbr_but_marque;
};
struct equipe
{
char nom[34];
date date_fondation;
joueur j[25];
};
void saisie_equipe()
{
equipe e[10];
int i,k,n,m;
printf("\n entrer le nbr d'equipe:");
scanf("\n%d",&n);
for(i=0;i<n;i++)
{
printf("\n donner le nom de l'equipe:");
scanf("\n%s",&e[i].nom);
printf("\n donner la date de fondation de l'equipe:");
printf("\n donner le jour de fondation:");
scanf("\n%d",&e[i].date_fondation.jour);
printf("\n donner le mois de fondation:");
scanf("\n%d",&e[i].date_fondation.mois);
printf("\n donner l'année de fondation:");
scanf("\n%d",&e[i].date_fondation.annee);
printf("\n donner le nbr de joueur:");
scanf("\n%d",&m);
for(k=0;k<m;k++)
{
printf("\n donner le nom du joueur:");
scanf("\n%s",&e[i].j[k].nom);
printf("\n donner l'age de joueur:");
scanf("\n%d",&e[i].j[k].age);
printf("\n donner le nbr de but marque:");
scanf("\n%d",&e[i].j[k].nbr_but_marque);
}
}
}
ET Merci.
#include<stdio.h>
#include<conio.h>
struct date
{
int jour;
int mois;
int annee;
};
struct joueur
{
char nom[30];
int age;
int nbr_but_marque;
};
struct equipe
{
char nom[34];
date date_fondation;
joueur j[25];
};
void saisie_equipe()
{
equipe e[10];
int i,k,n,m;
printf("\n entrer le nbr d'equipe:");
scanf("\n%d",&n);
for(i=0;i<n;i++)
{
printf("\n donner le nom de l'equipe:");
scanf("\n%s",&e[i].nom);
printf("\n donner la date de fondation de l'equipe:");
printf("\n donner le jour de fondation:");
scanf("\n%d",&e[i].date_fondation.jour);
printf("\n donner le mois de fondation:");
scanf("\n%d",&e[i].date_fondation.mois);
printf("\n donner l'année de fondation:");
scanf("\n%d",&e[i].date_fondation.annee);
printf("\n donner le nbr de joueur:");
scanf("\n%d",&m);
for(k=0;k<m;k++)
{
printf("\n donner le nom du joueur:");
scanf("\n%s",&e[i].j[k].nom);
printf("\n donner l'age de joueur:");
scanf("\n%d",&e[i].j[k].age);
printf("\n donner le nbr de but marque:");
scanf("\n%d",&e[i].j[k].nbr_but_marque);
}
}
}
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
15 janv. 2008 à 04:36
15 janv. 2008 à 04:36
pour rentré les donnees je pense que tu es capable de faire ça...
pour afficher le nom des joueurs qui ont marqué plus de dix buts et celui de leur equipe
tu pourrais creer un tableau et y metre toutes les equipes puis tu calcules le nrb de but marque par chaque equipe en additionnant les buts marque par chaque joueur de l'equipe puis tu fais un tri pour les classer ensuite...
bonne chance ;)
pour afficher le nom des joueurs qui ont marqué plus de dix buts et celui de leur equipe
for(i=0;i<15;i++) if(equipe.j[i].nbr_but_marque > 10) printf("%s qui joue a %s a marque plus de 10 buts",equipe.j[i].nom,equipe.nom);pour afficher le classement des equipes suivant le nbr de but marqué
tu pourrais creer un tableau et y metre toutes les equipes puis tu calcules le nrb de but marque par chaque equipe en additionnant les buts marque par chaque joueur de l'equipe puis tu fais un tri pour les classer ensuite...
bonne chance ;)
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
16 janv. 2008 à 19:29
16 janv. 2008 à 19:29
rajoute ça (sans oublier de faire les declaration) et ça devrait marché...
for(i=0;i<n;i++) for(j=0;j<m;j++) if(e[i].j[j].nbr_but_marque > 10) printf("%s qui joue a %s a marque plus de 10 buts il en a marque %d\n",e[i].j[j].nom,e[i].nom,e[i].j[j].nbr_but_marque); for(i=0;i<n;i++) for(j=0;j<m;j++) but_eq[i]+=e[i].j[j].nbr_but_marque; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(but_eq[i] < but_eq[j]) { temp=e[i]; e[i]=e[j]; e[j]=temp; temp2=but_eq[i]; but_eq[i]=but_eq[j]; but_eq[j]=temp2; } printf("\n----Classement----\n"); for(i=0;i<n;i++) printf("%d- %s %d but\n",i+1,e[i].nom,but_eq[i]);bonne chance ;)