Ragazzi mi succede una cosa strana:

codice:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include "liste.h"

int main(int argc, char *argv[])
{
    char choise;
    char cont;
    NODO *L;
    L = NULL; 
    int element;
  
    do
    {
        printf("GESTIONE DI UNA LISTA:\n\n");
        printf("[1].     Inserisci un elemento nella lista:\n");
        printf("[2].     Stampa la lista:\n");
        printf("[3].     Cancella elemento dalla lista(estrazione in testa)\n");
  
        choise = getchar();
  
        switch(choise)
        {
           case '1':
                // Inserisco un elemento nella lista.
                printf("Inserisci l'elemento(int) da inserire:\n");
                scanf("%d", &element);
                L=AddToList(L, element);
           break;
           
           case '2':
                // Stampo la lista.
                StampList(NULL);  
           break;
           
           case '3':
                ;
           break;
        }

        printf("Vuoi continuare ? (s/n)\n");
        cont = getchar();
    
    } while ( cont == 's' );
    
    system("\nPAUSE");
}
Praticamente quando effettuo una scelta, esempio 1, mi fà inserire l'elemento richiama la funzione e poi dopo e come se non considerasse il while, cioè mi esce scritto:

Vuoi continuare ? (s/n)
Clicca un tasto per continuare . . .

Cioè senza contare cont = getchar();

Come mai?

Grazie anticipatamente