Originariamente inviato da Drag09876
1 domanda

artendo dal presupposto che ho capito come funzionano le strutture e i vettori,è possibile avere un esempio di come inizializzare e accedere a un vettore proprio di tipo Risultati[N] ?
Così dovrebbe andare:
Codice PHP:
#include <stdio.h>
#define N 20
typedef struct{
int ora;
int minuto;
int secondo;
} Orario;
typedef struct {
Orario partenza;
Orario arrivo;
} Tempi;
typedef Tempi Risultati[N];
int main()
{
Risultati r;
int i;
for(i = 0; i < N; i++)
{
r[i].partenza.ora = i+1;
r[i].partenza.minuto = i+2;
r[i].partenza.secondo = i+3;
r[i].arrivo.ora = i+4;
r[i].arrivo.minuto = i+5;
r[i].arrivo.secondo = i+6;
}
for(i = 0; i < N; i++)
{
Orario p = r[i].partenza;
Orario a = r[i].arrivo;
printf("%d/%d/%d\t%d/%d/%d\n", p.secondo, p.minuto, p.ora, a.secondo, a.minuto, a.ora);
}
}
2 domanda:data la definizione sopra quello che io devo fare è:
- dichiarare un altro vettore come quello sopra,ma con nome diverso (tral'altro non ho capito:Risultati[N] è un vettore o un tipo? Se è un tipo come inizializzo un vettore che contiene proprio i Tempi (formati da orario e partenza)?
Risultati[N] è un tipo che indica un array di Tempi. Per creare un vettore di N elementi, o crei una variabile di tipo Risultati oppure eviti il typedef e crei un Tempi[N]
codice:
Risultati arr_1;
Tempi arr_2[N];
- Un esempio di come accedere e modificare un elemento (Es: partenza.ora) del nuovo vettore?
codice:
arr_2[0].partenza.ora = 23;