Salve,
sto cercando di capire come funziona la lettura da e la scrittura su file.
Il programma dovrebbe leggere da file una serie di numeri, salvarli in un vettore, raddoppiare ogni elemento del vettore, e ricopiare in coda ai numeri iniziale il loro doppio ( quindi stampare sul file il vettore modificato).Purtroppo oltre a stampare sul file i numeri raddoppiati, mi stampa anche un altro numero che non so da dove provieneecco :
Il codice è questo:
codice:#include<stdlib.h> #include<stdio.h> main() { FILE* f; char nome[10]; int vettore[10],i,z; printf("Inserire il nome del file\n"); scanf("%s", nome); f=fopen(nome, "r"); i=0; if(f==NULL) { exit(0); } else { while(feof(f)==0) { fscanf(f,"%d", &vettore[i]); i=i+1; } fclose(f); for(z=0;z<i;z++) { vettore[z]=vettore[z]*2; } fopen(nome, "a"); for(z=0;z<i;z++) { fprintf(f,"%d\n", vettore[z]); } fclose(f); } system("pause"); }

ecco : 
Rispondi quotando