Accedi per seguire   
Seguaci 0
aRaKaNoiD

Aiuto In C

7 messaggi in questa discussione

hello raga...

se ho questo

struct {

int numero;

char nome;

}ok[20];

questa struttura la ho sul main...e mi serve il campo "numero" xo con tutto l array...mi vengo a spiegare meglio! :

ok[0].numero

ok[1].numero

ok[2].numero

ok[3].numero

........

ok[20].numero

mi serve tutto questo passato ad una funzione in modo tale da fare ad esempio una media!

come si fa? nn riesco a trovare una soluzione!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Vuoi passare un array di struct ad una funzione?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Inviato (modificato)

in poke parole nn posso dikiarare una struttura globale

devo diakiararla interna al main e poi passare nn tutta la struttura ma il singolo parametro

cioe se ho nel main

struct esempio {

int c;

char z;

};

struct esempio okey[5];

alla funzione devo passare solamente il campo "c" ...non tutta la struttura

xkui nella funzione devo passare okey[0].c okey[1].c ........ okey[5].c

ti faccio un esempio cosi capisci a cosa mi serve...( la struct nn la posso dikiarare globale xke il prof vuole cosi :\ anke xke in quel modo era tr semplice!! passavo tutta la struttura e il gioco era fatto :) )

un algoritmo del genere x comprenderlo meglio fai finta che e questo cosi capisci a cosa mi serve...

/* istruzioni main */

struct esempio {

int voto;

char nome[10];

};

struct esempio studente[5];

dobbiamo creare una funzione che ci faccia la media totale dei voti di tutti gli studenti

Modificato da aRaKaNoiD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Inviato (modificato)

posto l unica soluzione che sono riuscito a trovare...

/* ho fatto l esempio con una media totale di un array di studenti */

#include <stdio.h>

#define N 10

struct struttura {

int voto;

char c;

}; /* una sola curiosita...cosi nn sto dikiarando una struttura globale vero?... e un "tipo" di struct questa? */

int funzione (struct studente arr[], contat) {

struct studente *punt;

int media;

punt = &arr[0]; /* dikiaro un puntatore a struttura */

media+=punt.voto/(++contat); /* faccio la media...contat aumenta ogni volta k viene kiamato funzione...in questo caso 1 sola volta visto k nn l ho messa dentro un for la funz. kiamata dal main */

*(punt++); /* aumento il puntatore di una cella in modo tale che scorra ttt l array */

return media;

}

int main () {

int contatore=0;

struct struttura studente[N]; /* array di struttura studente */

int mediatotale;

mediatotale=funzione(studente, contatore);

}

con il typedef passiamo direttamente tutta l intera struttura e facciamo prima :)

ci stavo pensando adesso...si potrebbe fare questo x nn utilizzare il puntatore...

contat++;

studente[contat].voto/contat;

Modificato da aRaKaNoiD

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
posto l unica soluzione che sono riuscito a trovare...

/* ho fatto l esempio con una media totale di un array di studenti */

#include <stdio.h>

#define N 10

struct struttura {

int voto;

char c;

}; /* una sola curiosita...cosi nn sto dikiarando una struttura globale vero?... e un "tipo" di struct questa? */

Non essendoci il typedef non crei un nuovo tipo, perciò quando poi vai a dichiarare l'array non sò che pasticcio venga fuori. Se il prof non ha detto nulla a riguardo io ti consiglio di creare il nuovo tipo do dato così sei a posto.

Questo puoi scriverlo anche così (arr è già di suo un puntatore che punta all'emento 0 dell'array):

punt = arr; /* dikiaro un puntatore a struttura */

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

si cn il typedef era fattibilissimo infatti ho fatto in quel modo il compito :)

e k volevo provarer cosi xke kredo k sia l unica cosa k nn sapevo fare...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ciao a tutti, è la prima volta che utilizzo un forum. Ho un grosso bisogno di aiuto il 20 devo consegnare un progetto in c e non so metterci mano. Ho visto che qui c'e' gente in gamba capace, forse, di darmi una mano.

progetto_labAlgoritmi.pdf

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0