PDA

Visualizza la versione completa : help Linguaggio C


LuanaRossi
22-02-2012, 17:47
Ragazzi ho bisogno di aiuto il programma mi chiedeva di creare due file di testo ballerini.txt e ballerine.txt con i relaviti nomi dei ballerini. Dopo di che dovevo creare una struct coppia che dovra contenere i nomi dei ballerini e delle ballerine. Questi nomi verranno caricati da file e memorizzati in un vettore V3....

Il mio problema questo. La consegna dell esercizio mi chiede di creare una coppia fra i ballerini e le ballerine.. Non riesco a farla.. qui vi faccio vedere fino a dove sn arrivata x rendere l idea...



/*Programma*/

#include<string.h>
#include<stdlib.h>
#include<stdio.h>
#define N 2

/*STRUTTURA DEL FILE ballerini.txt*/
struct ballerini{
char nome[30];
int anni;
} V1[N];

/*STRUTTURA DEL FILE ballerine.txt*/
struct ballerine{
char nome[30];
}V2[N];

/*STRUTTURA COPPIA*/
struct coppia{
char tipologia_Ballo_esperti[N];
int anni_ballo_coppia;
char nome_ballerino[20]; /*copiato dal vettore v1*/
char nome_ballerina[20]; /*copiato dal vettore v2 del file*/
}V3[N];

int i=0;
void menu();
void load(); /*FUNZIONE PER CARICARE DAI FILES */
void stampa(); /*FUNZIONE CHE STAMPA A SCHERMO LE COPPIE DI BALLERINI*/
void aggiungi(); /*FUNZIONE CHE PERMETTE DI AGGIUNGERE DATI*/
void menu(){
printf("\nBenvenuto a Ballando con le Stelle\nPremi\n1.Per caricare i file\n2.Per visualizzare le coppie\n.0 Per terminare\nSeleziona Opzione:\n");
}

/*ORA POSSIAMO INIZIARE*/

int main(){

int c=-1;
while(c!=0){
menu();
load();
scanf("%d", &c);
switch(c){
case 0: printf("\nArrivederci e Grazie\n");
break;
case 1: load();
break;
default:printf("\nOpzione non corretta\n");
break;
}
}
return 0;
}

/*FUNZIONE LOAD*//*OK*/

void load(){
struct coppia temp;
int j;

FILE *fp;
fp = fopen("ballerini.txt","a+");
for(j=0;j<N;j++){
fread(&V1[j], 1, sizeof(struct ballerini),fp);
}
for(j=0;j<N;j++){
strcpy(V3[j].nome_ballerino,V1[j].nome);
}
fclose(fp);

/*Carico secondo file di testo*/ /*Copio le ballerine nel vettore V3 della struct*//*OK*/
FILE *fs;
fs= fopen("ballerine.txt","a+");
for(j=0;j<N;j++){
fread(&V2[j],1, sizeof(struct ballerine),fs);
}
for(j=0;j<N;j++){
strcpy(V3[j].nome_ballerina,V2[j].nome);
}
fclose(fs);
}



attendo delle risposte grazie... sono alle prime armi _

LeleFT
22-02-2012, 17:54
Se c' un tipo di titolo della discussione che il regolamento interno (http://forum.html.it/forum/showthread.php?s=&threadid=973887) vieta espressamente, esattamente quello che hai dato tu a questa discussione.

Da aggiungere che:

1) Manca(va), nel titolo, l'indicazione del linguaggio usato.
2) Manca l'uso dei tag CODE per il posting del codice
3) Manca completamente l'indicazione del problema preciso trattato: hai detto che non riesci a fare una parte della consegna, ma non hai detto cos' che ti blocca.

Mi pare ci siano elementi sufficienti per la chiusura del post.

Ti invito a prendere visione del regolamento interno che ho linkato ed, eventualmente, riaprire una nuova discussione indicando tutto ci che manca.


Ciao. :ciauz:

Loading