X-Git-Url: https://git.piment-noir.org/?p=TD_C.git;a=blobdiff_plain;f=TP_13%2Fexo1%2Fsrc%2Fmain.c;h=e7472189288080d542fbfb709d6a3f01a8eab848;hp=ea4abc39e67b739c04fcba45a5f142a0f2a31491;hb=475ee86d70921638c700bc0934441c7fe2c905d1;hpb=cfdd46d2e85b05f77a03ae31f721e2fd4030996f diff --git a/TP_13/exo1/src/main.c b/TP_13/exo1/src/main.c index ea4abc3..e747218 100644 --- a/TP_13/exo1/src/main.c +++ b/TP_13/exo1/src/main.c @@ -8,16 +8,38 @@ int main() { int* tab = NULL; unsigned tab_size = 0; + int errno = 0; + int choice = 0; + printf("=== Saisie initiale ===\n\n"); tab = prompt_array(tab, &tab_size); - printf("%d\n", tab_size); - - display_array(tab, tab_size); - - sort_tab(tab, tab_size, ascending_and_odd); - - display_array(tab, tab_size); + do { + display_choice_menu(); + errno = prompt_value("Choix?", &choice); + handle_prompt_error(errno); + if (1 > choice || 5 < choice) { + printf("\nFaire un choix compris entre 1 et 5\n"); + continue; + } + switch (choice) { + case 1: + tab = do_concat(tab, &tab_size); + break; + case 2: + do_sort(tab, tab_size); + break; + case 3: + display_array(tab, tab_size); + break; + case 4: + do_count(tab, tab_size); + break; + default: + /* do nothing, unused code path */ + break; + } + } while (choice != 5); free_tab(tab); exit(EXIT_SUCCESS);