Bonjour,
Ce programme consiste a entrer des dates dans un tableau de [max][3] (jours,mois,année)par l'utilisateur puis les afficher jusque la ok ça marche puis on me demande de réalise un tri par insertion simple et afficher et la je bloque vraiment! :-( tous ça en utilisant les fonctions par pointeur es ce que quelqu'un pourrais me donner une solution simple ? ce serrais vrmt génial !
Voilà le code :
#include<stdio.h>
#include<windows.h>
#define max 50
void encodage(int *,int);
void affichage(int*,int);
void tri (int*,int);
void main()
{
int Date[max][3],ndate;
do
{
printf("Saisir le nombre de dates a saisir:");
fflush(stdin);
scanf("%d",&ndate);
}while(ndate<=0 || ndate>max);
//Fonction encodage
encodage(&Date[0][0],ndate);
affichage(&Date[0][0],ndate);
tri(&Date[0][0],ndate);
affichage(&Date[0][0],ndate);
}
/**********************************************************
/* */
/* input: ndate: nombre d'élément dans le tableau */
/* pt: Adresse du tableau */
/* */
/* process:lit les dates et les places dans le tableau */
/* dont l'adresse est donnée */
/* */
/* output:/ */
/**********************************************************/
void encodage (int *Date,int ndate)
{
int mois,jours,annee,i;
do{
i=0;
do
{
printf("Encoder le jour de la %d date:",i+1);
fflush(stdin);
scanf("%d",&jours);
*Date=jours;
printf("Encoder le mois de la %d date:",i+1);
fflush(stdin);
scanf("%d",&mois);
*(Date+1)=mois;
printf("Encoder le annee de la %d date:",i+1);
fflush(stdin);
scanf("%d",&annee);
*(Date+2)=annee;
i++;
Date=Date+3;
system("cls");
} while(i<ndate);
}while(ndate<=0 || ndate>max);
}
/**********************************************************
/* */
/* input: ndate: nombre d'élément dans le tableau */
/* date: Adresse du tableau */
/* */
/* process:Affiche les dates encodées */
/* */
/* output:/ */
/**********************************************************/
void affichage (int *Date,int ndate)
{
int i=0;
printf("Les Dates sont donc:\n");
printf("_____________________\n\n");
do
{
printf("%d / %d / %d \n",*Date,*(Date+1),*(Date+2));
Date=Date+3;
i++;
}while(i<ndate) ;
printf("\n");
}
/**********************************************************
/* */
/* input: ndate: nombre d'élément dans le tableau */
/* pt: Adresse du tableau */
/* */
/* process:trie les date dans l'ordre croissant */
/* */
/* output:/ */
/**********************************************************/
void tri(int *Date,int ndate)
{
}