Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    visualizzare il nome di una stringa

    salve a tutti ......io non sono un genio della programmazione...volevo fare un programma che dica all'utente quale è la città con più abitanti e quella con meno abitanti (il numero di abitanti è inserito dall'utente)...il programma così era banale allora ho pensato che nel risultato finale il programma avrebbe fatto uscire anche il NOME DELLA CITTà inserita....dunque ho girato un po per internet per capire come fare a salvare una stringa ed ecco quello che ho fatto...probabilmente molti di voi si metteranno a ridere per quello che ho scritto, o diranno che sono un incapace .....comunque se potete aiutarmi ve ne sarei grato....


    #include<stdio.h>
    #include<stdlib.h>
    #include<iostream.h>
    main()
    {
    int abitanti,min,max,min1,max1,c;
    char citta [50],cittappop [50],cittampop [50];
    printf("QUESTO PROGRAMMA TI DIRA' QUALE E' LA CITTA + E - POPOLOSA\n\n");
    printf("Inserisci il nome della 1 citta' : ");
    cin.getline(citta,50);
    printf("\nQuanti abitanti ha questa citta'?? : ");
    scanf("%d",&abitanti);
    c=1;
    min=abitanti;
    max=abitanti;
    min1=c;
    max1=c;
    cittappop [50] = citta [50]; //variabile per la citta più popolosa
    cittampop [50] = citta [50] ; //variabile per la città meno popolosa
    for(c=2;c<=10;c++)
    {
    printf("\nInserisci il nome della %d citta' : ",c);
    while(getchar()!='\n');
    cin.getline(citta,50);
    printf("\nQuanti abitanti ha questa citta'?? : ");
    scanf("%d",&abitanti);
    if(abitanti>max)
    {
    max=abitanti;
    max1=c;
    cittappop [50] =citta [50];
    }
    else if(abitanti<min)
    {
    min=abitanti;
    min1=c;
    cittampop [50] =citta [50];
    }
    }
    printf("\nLa citta' più popolosa e' %d che hai inserito: e' %c con %d abitanti!\n\n",max1,cittappop,max);
    printf("La citta' meno popolosa e' la %d che hai inserito: e' %c con %d abitanti!\n\n",min1,cittampop,min);
    system("pause");
    }

  2. #2
    Utente bannato
    Registrato dal
    Oct 2010
    Messaggi
    1,219
    Che errori/comportamenti indesiderati ti da?
    Comunque ti consiglio di dichiarare:
    codice:
    string citta,cittappop,cittampop;
    E poi usi le normali istruzioni di output/input:
    codice:
    cin>>citta;
    cout<<citta;

  3. #3
    Che errori/comportamenti indesiderati ti da?
    scusa la mia ignoranza, ma cosa sono questi errori??il programma comunque parte e funziona correttamente solo che alla fine al posto di inserire il nome della città mi mette un simbolo strano....
    per dichiarare le variabili in string mi dovresti dire pure la libreria da inserire, altrimenti non viene riconosciuto..
    grazie!

  4. #4
    Originariamente inviato da elialongoni04

    per dichiarare le variabili in string mi dovresti dire pure la libreria da inserire, altrimenti non viene riconosciuto..
    #include <string>

    Inoltre hai mischiato C e C++, non che questo sia illegale, ma visto che stai imparando concentrati solo su un linguaggio.

    L'errore sta qui
    codice:
    printf("\nLa citta' più popolosa e' %d che hai inserito: e' %c con %d abitanti!\n\n",max1,cittappop,max);
    %c indica un carattere, %s una stringa

  5. #5
    Inoltre hai mischiato C e C++, non che questo sia illegale, ma visto che stai imparando concentrati solo su un linguaggio.
    LOL

    comunque ho sistemato il %c e infatti ora se faccio un programma che mi visualizza la stringa funziona, però questo no! addirittura l'ultimo printf viene completamente modificato da c++, nel senso che mi inverte le parole!?!?!?
    io credo che il mio errore sia qui
    codice:
    cittappop [50] = citta [50]; 
    cittampop [50] = citta [50] ;
    e poi qui
    codice:
    if(abitanti>max) 
    {
    cittappop [50] = citta [50]; 
    }
    forse questo è un comando che non esiste e me lo sono inventato io?praticamente qui io cerco di dare alla variabile cittappop lo stesso significato della stringa contenuta in citta....

  6. #6
    Sì, le stringhe non si copiano in quel modo. Prima non ci avevo fatto caso.
    devi usare strcpy

  7. #7
    ooo finalmente!! ci ho messo un po a capire come usare strcpy però alla fine sono riuscito a far funzionare questo cazzo di programma!
    grazie a tutti!

  8. #8
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,310

    Moderazione

    Originariamente inviato da elialongoni04
    ooo finalmente!! ci ho messo un po a capire come usare strcpy però alla fine sono riuscito a far funzionare questo cazzo di programma!
    Innanzitutto, evitiamo il turpiloquio e le parolacce gratuite.

    Oltre a questo, continui ad aprire discussioni senza specificare il linguaggio nel titolo e senza formattare il codice sorgente.

    Sei stato già richiamato in questa sede per gli stessi motivi.

    La prossima volta, chiudo e segnalo il comportamento agli amministratori.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.