L'esercizio non è completo....perchè quando vado ad eseguirlo la data mi risulta sporca e non mi è possibile scrivere?codice:/* Usare le Struct; 2 Struct: Alunni,Data Usare le funzioni: Inserimento,Modifica data e per cognome,Stampa,Ordinamento,Ricerca per data e per cognome */ #include <stdio.h> #define MAX 100 typedef struct{ char cognome [30]; char nome [30]; float media; int giorno; int mese; int anno; }studente; // prototipi di funzione int selezione(int sel); void inserimento(studente vettstud[],int x); void stampa(studente vettstud[],int size); //il programma inizia dalla funzione main int main() {int sel,scelta,decisione,x,contr,size,i; contr=0; studente vettstudenti[100]; printf("*** Benvenuto nel programma ***\n\n"); printf("Inserisci il numero di studenti da prendere in considerazione(MAX 100) :"); scanf("%d",&size); if(size > 100) { while(size > 100) {printf("\n\nInserisci il numero di studenti da prendere in considerazione (MAX 100) :"); scanf("%d",&size); } } sel=selezione(scelta); while(contr==0) { switch (sel) { case 1: printf("\n\nQuanti studenti vuoi inserire? :"); scanf("%d",&x); inserimento(vettstudenti,x); break; case 2: printf("\n\n*** Stampo gli studenti ***"); stampa(vettstudenti,size); break; case 6: printf("Esco..."); contr=1; break; default: printf("\nAttenzione! Valore inserito errato!\n"); break; } sel=selezione(scelta); } system("CLS"); system("PAUSE"); //fine del programma } int selezione(int sel) { printf("\nProgramma studenti\n\n"); printf("[1].Inserimento studenti\n[2].Stampa studenti\n[3].Ordinamento studenti\n[4].Modifica per data o cognome\n[5].Ricerca per data o per data o per congnome\n[6].Esci dal programma\n\nInserisci la tua scelta :"); scanf("%d",&sel); return sel; } void inserimento(studente vettstud[],int x) { int i; for(i=0;i<x;i++) { printf("\nInserisci il cognome del %d studente :",i+1); scanf("%s",&vettstud[i].cognome); fflush(stdin); printf("\nInserisci il nome del %d studente :",i+1); scanf("%s",&vettstud[i].nome); fflush(stdin); printf("\nInserisci la data di nascita (gg-mm-aaaa) :"); scanf("%d-%d-%d",&vettstud[i].giorno,&vettstud[i].mese,&vettstud[i].anno); printf("\nInserisci la media del %d studente:",i+1); scanf("%f",&vettstud[i].media); printf("\n**********\n"); } printf("\n\nInserimento completato! \n\n"); printf("%d",&vettstud[0].giorno); } void stampa(studente vettstud[],int size) { int i; i=0; printf("\n\tCognome\t\tNome\t\tData di nascita\t\tMedia\n"); for(i=0;i<size;i++) { printf("\n\t%s",&vettstud[i].cognome); printf("\t\t\%s",&vettstud[i].nome); printf("\t\t\%d-%d-%d",&vettstud[i].giorno,&vettstud[i].mese,&vettstud[i].anno); } printf("\n\n***Stampa completata!***\n\n"); }
Grazie a tutti anticipatamente