Semplice Programma con getchar()

di il
2 risposte

Semplice Programma con getchar()

Grazie al consiglio di Wierstrass, mi sono cimentato a scrivere un programmino semplice, per utilizzare getchar, intercettando un carattere desiderato o preimpostato. spero sia gradito.

# include <stdio.h>
# include <stdlib.h>
//Programma Didattico per apprendere l'utilizzo di getchar fornendo 4 opzioni per uscire dal programma
char Carattere;//Scelgo la stringa da stampare
char NewLine(char InputTastiera);//Creazione prototipo funzione NewLine
char FunctPunto(char InputTastiera);//Creazione prototipo funzione Punto
char FunctEOF(char InputTastiera);  //Creazione prototipo funzione Inpu Tastiera
char FunctCaratAScelta (char InputTastiera);//Creazione prototipo funzione CaratAScelta
int main(void)
{



int Scelta;//Scelgo la voce per uscire dal programma


    printf("Fai il numero di voce Interessata per terminare il programma:\n");
    while(Scelta < 1 || Scelta > 4)//Scelta!=1 && Scelta!=2 && Scelta!=3 && Scelta!=4
                                   // Ripeto il ciclo se scelta
    {
         printf("1)Esco dal flusso del programma Inserendo il punto\n");
         printf("2)Esco dal programma inserendo new line e return\n");
         printf("3) Esco dal Programma Quando Raggiungo la fine del finele EOF\n");
         printf("   Nota per code Block e-->Per GDBOnline premere Ctrl c per raggiungere EOF\n");
         printf("4)Esco dal Flusso del programma con un carattere a scelta\n");
         scanf(" %d", &Scelta);
         if(Scelta>4 || Scelta<0)printf("Scelta Errata....\nInserire  il numero corretto\n");
         printf("Inserisci la stringa desiderata:\n ");
    }


    switch(Scelta)//Esguo una selezione
    {
       case 1:
          NewLine(Carattere);//Richiamo la funzione
       break;
       case 2 :
            FunctPunto(Carattere);//Richiamo la funzione
       break;

       case 3 :
        FunctEOF (Carattere);

       break;
         case 4 :
              FunctCaratAScelta ( Carattere);

          break;

       default:
       printf("Scelta Sbagliata");
       break;

    }

}
///********************************************************************************
//Creo La funzione NewLIne
      char NewLine(char InputTastiera)
    {
       while((InputTastiera=getchar())  !='.')//Esco quando digito il punto
         putchar(InputTastiera);
        return InputTastiera;
    }
    ///**********************************************************************

//Creo La funzione Punto
char FunctPunto(char InputTastiera)
{
    while((InputTastiera =getchar()) =='\n' || (InputTastiera =getchar()) =='\r')//Uscita dal Programma quando digito invio
                                                                             //Ottenendo una new Line \n Ed un return \r
        {putchar(InputTastiera);}
        return InputTastiera;
}
///*******************************************************
//CREO LA funzione EOF
char FunctEOF(char InputTastiera)
{
     while((InputTastiera = getchar()) != EOF);//Uscita dal programma quando raggiungo EOF END OF FILE
       {InputTastiera = getchar();
         putchar(InputTastiera);
          printf("Sto Uscendo Dal Programma");}
          return InputTastiera;
}

///++++++++++++++++++++++++++++++++++++++
char FunctCaratAScelta (char InputTastiera)
{
    while((InputTastiera= getchar()) == '\n' ||(InputTastiera = getchar()) == '\r' );
            {printf("Inserisci il Carattere di Uscita\n");
            InputTastiera = getchar();//Inserisco il carattere desiderato per l'uscita
              printf("Sto Uscendo dal Programma");
               return InputTastiera;
               getchar();}//Puasa in attesa del comando

}

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte