Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [c] problema ^___^

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92

    [c] problema ^___^

    Ciao raga mi potete aiutare a risolvere questo problema?
    ho creato un piccolo programma, come inizio, xò nn riesco a capire cosa sbaglio, l'errore sta dove risp. "ok ricapitoliamo....... di anni 40, ma anzicchè il 40 mi esce un numeraccio, xkè??? Help pls!!!

    #include <stdlib.h>
    #include <stdio.h>
    #include <ctype.h>

    #define MAXSTRING 100

    int main(void)

    {
    char c, name[MAXSTRING];
    int i, x, sum = 0;

    printf("\n\nHi!! Come ti kiami? ");
    for (i = 0; (c = getchar()) !='\n'; ++i) {
    name[i] = c;
    if (isalpha(c))
    sum += c;
    }
    name[i] = '\0';
    printf("\nQuanti anni hai? ");
    scanf("\n%d", &x);
    if (x < 30)
    {
    printf("\n\n\n%s\n\n", " Ahahah, Come no!!! ");
    }
    else if (x >= 32)
    {
    printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:",
    "Danilo Caracciolo nato a Lecce, di anni",
    "40");
    }
    system("pause");
    return 0;
    }

    Tnx Peppe...
    Ps: entropic666 nn ti dispiace se l'ho postato anche in public, vero?

  2. #2
    Anche non capendo lo scopo del tuo programma(chiede un nome ma poi ne stampa uno "fisso" scritto a priori ) l'errore è su questo printf
    codice:
    printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:", 
     "Danilo Caracciolo nato a Lecce, di anni", 
     "40");
    perchè indichi di stampre due stringhe (%s %s) e un intero(%d) ma senza indicare le variabili...

    Se vuoi stampare l'età immessa in input fai cosi':
    codice:
    printf(" Ok,ricapitoliamo: Danilo Caracciolo di anni %d",x);
    mentre se ti basta stampre sempre lo stesso messaggio(ossia 40 anni fai cosi'):
    codice:
    printf(" ...di anni 40");
    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  3. #3

    Re: [c] problema ^___^

    printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:",
    "Danilo Caracciolo nato a Lecce, di anni",
    "40");
    [/B]
    La sintassi giusta è:

    codice:
    printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:", 
    "Danilo Caracciolo nato a Lecce, di anni", 
    40);
    Infatti "40" equivale ad una stringa in C, mentre 40 (senza le virgolette) non è una stringa e quindi può essere un intero (%d).

    Bye

  4. #4
    si ma per stampre un testo e un intero che NON variano mai,NON essendo VARIABILI basta fare un printf(" stampa quello che vuoi");

    A livello di sintassi funzione cmq ma nn ha senzo

    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92

    re: problemino

    [quote]
    Anche non capendo lo scopo del tuo programma(chiede un nome ma poi ne stampa uno "fisso" scritto a priori ) l'errore è su questo printf

    printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:",
    "Danilo Caracciolo nato a Lecce, di anni",
    "40");
    perchè indichi di stampre due stringhe (%s %s) e un intero(%d) ma senza indicare le variabili...


    Xkè andando a capo e chiudendo le virgolette bisogna dirgli che è una stringa... almeno così ho capito :quipy:
    Poi ho scritto questo programma solo sfottere un amico, ehehehe..
    Cmq. mi 6 stato di aiuto, ho capito qual'era il problema e l'ho risolto... tnxxxxx.... :gren: :gren:
    Ps. il problema si strovava effettivamente in questo print: si poteva modificare in 2 modi:

    1)printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:",
    "Danilo Caracciolo nato a Lecce, di anni ",
    40);

    2)printf("%s\n%s\n%s\n\n", "ok, ricapitoliamo:",
    "Danilo Caracciolo nato a Lecce,",
    "di anni 40");

    Oppure facendo inserire il valore che riceveva in input...
    printf("%s\n%s\n%d\n\n", "ok, ricapitoliamo:",
    "Danilo Caracciolo nato a Lecce, di anni",
    x);

    Bye...
    Peppe...

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    [quote]
    si ma per stampare un testo e un intero che NON variano mai,NON essendo VARIABILI basta fare un printf(" stampa quello che vuoi");

    A livello di sintassi funzione cmq ma nn ha senzo

    Lo so ma essendo la prima volta ke cerco di scrivere un, kiamiamolo, programma nn ci ho fatto caso.. cmq. tnx x il rinfresco...
    Bye...
    Peppe...

  7. #7
    di nulla
    ciao :gren: :gren:

    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

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.