Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-06-2013, 17:35   #1
razzoman
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
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 07-06-2013, 20:48   #2
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da Antonio23 Guarda i messaggi
è buona norma controllare che l'apertura del file è andata a buon fine, altrimenti rischi di dereferenziare un null pointer... quindi aggiungi un if(!fp) print something and exit per essere sicuro che non è lì il problema...
Provo subito e ti dico
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 07-06-2013, 20:54   #3
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da razzoman Guarda i messaggi
Provo subito e ti dico
Fatto mi dice programma non validowImageUploadedByTapatalk1370634839.428450.jpg
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 07-06-2013, 23:37   #4
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da Antonio23 Guarda i messaggi
"programma non valido" è la stringa nella printf che hai aggiunto, vero? Non riesci ad aprire il file, quindi probabilmente non stai dando il percorso corretto oppure il file non è presente all'interno della cartella di lavoro dell'eseguibile.
Ora va, o meglio si avvia peró non mi da la materia ne altro, mi mette solo parole random
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2013, 09:12   #5
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da Antonio23 Guarda i messaggi
prova ad aggiungere \n alla fine della stringa di formato. se è possibile prova ad usare il debugger step by step. altrimenti quando ho un pò di tempo provo a farlo girare.
Grazie mille provo a farle e ti faccio sapere
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2013, 13:16   #6
tecno789
Senior Member
 
L'Avatar di tecno789
 
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
tecno789 è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2013, 13:44   #7
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da tecno789 Guarda i messaggi
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;
}
Ho provato anche il tuo ma non va, ho provato anche a rifare il mio ma senza risultati
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2013, 13:47   #8
tecno789
Senior Member
 
L'Avatar di tecno789
 
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
Quote:
Originariamente inviato da razzoman Guarda i messaggi
Ho provato anche il tuo ma non va, ho provato anche a rifare il mio ma senza risultati
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
tecno789 è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2013, 13:50   #9
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da tecno789 Guarda i messaggi
ma glielo passi il file da riga di comando?
Sisi guardaImageUploadedByTapatalk1370695812.074312.jpg e il file lo metto nella cartella del programma
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 08-06-2013, 13:55   #10
razzoman
Senior Member
 
Iscritto dal: Oct 2006
Messaggi: 968
Quote:
Originariamente inviato da tecno789 Guarda i messaggi
ma glielo passi il file da riga di comando?
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 ( oddio ce l avete), grazie mille, solo una cosa perchè hai messo n=3?

Ultima modifica di razzoman : 08-06-2013 alle 14:04.
razzoman è offline   Rispondi citando il messaggio o parte di esso
Old 09-06-2013, 09:33   #11
tecno789
Senior Member
 
L'Avatar di tecno789
 
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
Quote:
Originariamente inviato da razzoman Guarda i messaggi
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 ( oddio ce l avete), grazie mille, solo una cosa perchè hai messo n=3?
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
tecno789 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Dopo 23 anni di silenzio, Warcraft 3 spi...
Roblox sfida l'ecosistema gaming: app st...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:00.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v