Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-11-2006, 08:43   #1
oiboo
Junior Member
 
Iscritto dal: Nov 2006
Messaggi: 1
C++ Array di struct e blocco struct unione

Salve a tutti io sono nuovo su questo forum, e vorrei porvi un esercizio che io ho già svolto, ma vorrei renderlo più generale, l'esercizio e il seguente:
________________________
|
|ALBERTO 24 PALERMO 1
|CICCIO 26 ROMA 2
|CARLO 30 PISA 3
|
|1 CARLA 28 ROMA
|2 MARIA 28 ROMA
|3 GIUSI 28 ROMA
|________________________ |
Leggere da file nomi.TXT e copiare in "Array di Struct


coppie |0_|1_|2_|_|_|_|_|_|_|n_|

STRUCT (BLOCCO STRUCT UNIONE)
________________________
nome_lui stringa
nome_lei stringa
eta_lui intero
eta_lei intero
citta_lui stringa
citta_lei stringa
_________________________
Stampare a video il contenuto dell'array "Coppie".

Io lo svolto così:
/*LEGGI DA FILE 'ARCHIVIO_COPPPIE.txt' E STAMPA A VIDEO COPPIE GENERATE*/

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

typedef struct {
char nome_lui[50];
int eta_lui;
char citta_lui[50];
char nome_lei[50];
int eta_lei;
char citta_lei[50];
}COPPIE;

int main()
{
int i, ncoppie=0, res;
FILE *fp;
fp=fopen("Archivio_coppie.txt", "r");
COPPIE archivio[50];

if (fp==NULL)/*Si è verificato un errore: il file Achivio_coppie.txt non esiste*/
printf ("Errore: il file 'Archivio_coppie.txt' non esiste\n");

do
{ res=fscanf(fp,"%s %d %s %s %d %s", archivio[ncoppie].nome_lui,
&archivio[ncoppie].eta_lui,
archivio[ncoppie].citta_lui,
archivio[ncoppie].nome_lei,
&archivio[ncoppie].eta_lei,
archivio[ncoppie].citta_lei);
}
while (res!=EOF && ++ncoppie<50);
fclose (fp);

for (i=0; i<ncoppie; ++i)
{printf ("%s\n%s\n%d\n%d\n%s\n%s\n", archivio[i].nome_lui,
archivio[i].nome_lei,
archivio[i].eta_lui,
archivio[i].eta_lei,
archivio[i].citta_lui,
archivio[i].citta_lei);

printf("Premi INVIO per visualizzare la coppia successiva\n\n");
getchar();
}

printf ("\nPremi INVIO per terminare il programma\n\n");
getchar();


return 0;
}.

Sempre, per l'esercizio precedentemente svolto ho dei quesiti da porgervi per rendere più generico l'esercizio, avendo come file di testo "Archivio_coppie.txt" scritto nel seguende modo:

Carlo 30 Pisa 3
1 Carla 28 Roma
Alberto 24 Palermo 1
2 Maria 28 Roma
Ciccio 26 Roma 2
3 Giusi 28 Roma

Diciamo con righe mescolate, si potrebbero ricreare le coppie, facendo eseguire al programma delle scansioni che riconoscono i numeri finali per quando riquarda lui tipo: "Alberto 24 Palermo 1" e il numero iniziale per quanto riquarda lei tipo: "1 Carla 28 Roma". Per poter creare le coppie.
E controllare se nel file ci sono righe ripetute tipo:
Carlo 30 Pisa 3
.......................
......................
...........................
.........................
..............................
Carlo 30 Pisa 3

E eliminare le righe ripetute, si può fare?

Grazie in anticipo e attendo dei consigli
oiboo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
Nutanix accelera la migrazione da VMware...
Nutanix apre ai neocloud: piattaforma mu...
Nutanix amplia la piattaforma cloud e st...
Le fotografie dell'eclissi solare e dell...
Oracle AI Database si potenzia con nuove...
Russia offline: blackout internet mobile...
Gemini, Google investe 30 milioni per la...
Roborock Qrevo Edge S5A: 17.000 Pa, acqu...
Resa pubblica la foto della ''Terra che ...
Il robot che ha piegato 200 scatole di f...
SteelSeries Aerox 3 Wireless Gen 2: nuov...
"Quasi sociopatico": Sam Altma...
Star Wars Eclipse in difficoltà: ...
Gestione del team e romance organiche: l...
Intel lancia Core Ultra X9 378H: hardwar...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:13.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v