Aiuto programmazione C

di il
3 risposte

Aiuto programmazione C

Salve a tutti, sto imparando a programmare in C(89). E mi chiedevo come mai questa porzione di codice non funziona? O meglio, se levo l'etichetta goto (e anche l'istruzione ovviamente) allora me lo compila. Ma vorrei far funzionare il goto. (sì so bene che non bisognerebbe usarlo, ma io voglio imparare ugualmente).
#include <stdio.h>
#include <stdlib.h>

int main()
{

    int a;


    printf("Benvenuto su Konsumy");
    label :
    printf(". Inserire il pin per accedere");
    scanf("%d",&a);

    if (a!=1111)

    printf("pin errato");
    goto label;

    else
        printf("grazie, ora si procede");
        
}

3 Risposte

  • Re: Aiuto programmazione C

    Se metti due istruzioni, a prescindere dal goto, devi racchiuderle in un blocco con le parentesi, altrimenti l'else si trova senza if.

    In pratica non è un problema di goto, ma non hai rispettato la sintassi della if
    
    	if (a != 1111)
    	{
    		printf("pin errato");
    		goto label;
    	}
    	else
    		printf("grazie, ora si procede");
    
  • Re: Aiuto programmazione C

    Grazie della risposta. solo un'altra domanda: come mai non mi compila questo?
    #include <stdio.h>
    
    
    main()
    
    {
    
        int a, b, c;
    
        printf("digita 3 numeri");
        scanf("%d",&a);
        scanf("%d",&b);
        scanf("%d",&c);
    
        printf("i numeri che hai inserito sono %d%d%d"a,b,c);
    
    }
    
  • Re: Aiuto programmazione C

    Io so perché ma dovresti imparare a leggere i messaggi d'errore ...

    Qual è il messaggio? In quale riga ti presenta l'errore? Leggilo bene ...
Devi accedere o registrarti per scrivere nel forum
3 risposte