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
| int
main(int argc, char *argv[])
{
tas T;
// Recupere le type de valeur en entree
// int ou string
char x;
printf("Quels types de valeurs dans le tas ?\n");
printf("c pour des chaines,\nn pour des entiers.\n");
scanf("%c", &x);
/*
if (x != "c" || x != "n")
{
fprintf(stderr,"Entiers ou chaines !\n");
exit(EXIT_FAILURE);
}
*/
// Recuperation de la taille du tas
printf("\nCombien de valeurs dans le tas ? ");
int n = 0;
scanf("%d", &n);
// Entree des valeurs
printf("\nEntrez les %d valeurs :\n", n);
int w =0;
bool sign = true;
while(sign == true)
{
void* z = NULL;
if (&x == "c") // Entre une chaine
{
//char z = '\0';
scanf("%s",(char*) &z);
tas_inserer(T, z);
}
if (&x == "n") // Entre un entier
{
//int z = 0;
scanf("%d",(int*) &z);
tas_inserer(T, z);
}
w++;
if(w == n)
sign = false;
}
if (argc == 1)
T=tas_creer(ordre_lexico_normal);
if (argc == 2 && argv[1] == "-i")
T=tas_creer(ordre_lexico_inverse);
if (argc == 2 && argv[1] == "-n")
T=tas_creer(ordre_numerique_ascendant);
if (argc == 3 && argv[1] == "-i" && argv[2] == "-n")
T=tas_creer(ordre_numerique_descendant);
else
usage(argv[0]);
return EXIT_SUCCESS;
} |
Partager