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 proviene ecco :
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");
}