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
|
#include<stdio.h>
#include<stdlib.h>
int *insere(int *tableau, int valeur, int taille);
int main(void)
{
int *T;
T=malloc(20*sizeof(int));
int j;
for ( j=0 ; j < 20 ; j++ )
{
T[j]=10*j;
}
char control='o';
int valeur;
int nouvelle_taille=20;
printf(" SAISIR 'n' POUR QUITTER LA SAISIE DES VALEURS et 'o' POUR CONTINUER \n\n");
while ( control != 'n')
{
printf(" Veuillez saisir un entier : ");
scanf("%d",&valeur);
nouvelle_taille++;
T = insere(T, valeur, nouvelle_taille);
printf("\nCONTINUER (o/n) : ");
scanf("%s",&control);
}
int i;
for ( i=0 ; i < nouvelle_taille ; i++ )
{
printf("\nT[%d]=%d", i, T[i]);
getch();
}
}
int *insere(int *tableau, int valeur, int taille)
{
tableau=realloc(tableau, taille*sizeof(int));
int inser;
int l=0;
for ( l=0 ; l < taille ; l++ )
{
if ( valeur >= tableau[l] )
{
inser=l;
}
}
int m;
for ( m=(taille-1) ; m<inser ; m-- )
{
tableau[m+1]=tableau[m];
}
tableau[inser+1]=valeur;
return tableau;
} |