Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2013
    Messaggi
    14

    [C] Uso della variabile char nella funzione if

    Salve a tutti,
    Sono altamente alle prime armi, e volevo chiedervi cosa c'è di sbagliato in questo pezzo di codice:

    codice:
    #include <stdio.h>
    
    int main()
    {
       char c [4];
       printf("inserisci la parola: ");
       scanf("%c", &c);
       if (c=="ciao")
        printf("esatto");
       else
        printf("sbagliato");
    }
    Quello che voglio che faccia è che se inserendo la parola, e nel caso questa coincida con la parola diciamo risolvente, lui mi dica esatto, nel caso contrario invece sbagliato..Qualcuno mi puo per favore dire cosa sbaglio?

    P.S. quando schiaccio Build, il programma (Codeblocks) non mi da nessun erorre, è solo successivamente, quando inserisco la parola che qualunque essa sia, anche quella giusta, mi da "sbagliato"

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Stiamo parlando di C (devi indicare il linguaggio nel titolo) e quindi le stringhe sono rappresentate come array di char.

    Questi sono terminati da un carattere nul quindi è già sbagliato non prevedere il carattere terminatore, nel tuo caso dovrebbe essere

    char c[5];

    Inoltre, la scanf deve prevedere l'input di una stringa, quindi

    scanf("%s", &c);

    e infine per il confronto non puoi utilizzare == ma la funzione di libreria strcmp, quindi

    if (strcmp(c, "ciao")==0)

    aggiungendo l'header

    #include <string.h>

    Trovi tutto in un libro di testo ... il C non si può improvvisare, va studiato, almeno per le basi ...

    P.S. Per quanto riguarda il titolo ... quella non è una variabile char ma un array di char e la if non è una funzione ...
    Ultima modifica di oregon; 23-10-2013 a 22:10
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.