|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
[c] aiuto programma
ciao a tutti devo fare un programma che legga da file il nome cognome dei prof e le statistiche del superamento dell'esame,quale semestre è la materie e i crediti es:
mario rossi informatica 1(semestre) 10(crediti) 40(% superamento) ora io ho provato a fare il programma,codeblock non mi da errori ma avviandolo mi da errore,sto impazzendo(è da 3 giorni che ci provo) ecco il codice #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct uni { char materia[20]; char nome[20]; char cognome[20]; int periodo; int crediti; int perc_sup; } uni; int main(int argc, char *argv[]) { uni prof[80]; int i=0,j,p,max; FILE *fp; fp = fopen(argv[1],"r"); while(!feof(fp)) { fscanf(fp,"%s%s%s%d%d%d",prof[i].nome,prof[i].cognome,prof[i].materia,&prof[i].periodo,&prof[i].crediti,&prof[i].perc_sup); p= i++; } max=prof[0].crediti; for(j=0; j<=p; j++) { if(max<prof[j].crediti) { max= prof[j].crediti; } } printf("la materia cn più crediti è%s",prof[j].materia); return 0; } per favore aiutatemi |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
Fatto mi dice programma non validowImageUploadedByTapatalk1370634839.428450.jpg
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
Ora va, o meglio si avvia peró non mi da la materia ne altro, mi mette solo parole random
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
non hai descritto bene cosa deve fare il programma, ma se devi stampare i crediti e così :
Codice:
#include <stdio.h> #include <stdlib.h> #include <string.h> #define N 3 typedef struct uni { char materia[20]; char nome[20]; char cognome[20]; int periodo; int crediti; int perc_sup; } uni; int main(int argc, char *argv[]) { uni prof[N]; int i=0; int max=0; FILE *fp; if(argc<2){ fprintf(stderr,"Errore apertura file \n"); exit(EXIT_FAILURE); } fp = fopen(argv[1],"r"); while(!feof(fp)) { fscanf(fp,"%s%s%s%d%d%d",prof[i].nome,prof[i].cognome,prof[i].materia,&prof[i].periodo,&prof[i].crediti,&prof[i].perc_sup); i++; } for(i=0;i<N;i++) { if(prof[i].crediti>prof[i+1].crediti) { max= prof[i].crediti; } max=prof[i].crediti; } printf("La materia con piu' crediti e' quella con %d \n",max); return 0; }
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
Quote:
|
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
ma glielo passi il file da riga di comando?
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
Sisi guardaImageUploadedByTapatalk1370695812.074312.jpg e il file lo metto nella cartella del programma
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Oct 2006
Messaggi: 968
|
Sono un pirla il tuo programma va, come un beota nn mettevo il percorso del file edit: devo mettere il nome della materia nn i crediti riedit: ce l ho fatta
![]() Ultima modifica di razzoman : 08-06-2013 alle 14:04. |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
niente era per fare una prova...puoi modificarlo come vuoi quel valore...
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:28.