Zapis tablicy do pliku

0

Hej,
Mam za zadanie zapisać tablice randomowych floatów do pliku, nazwa pliku ma być pobrana od użytkownika, plik ma być binarny, a liczby mają być oddzielone nową linią

Niestety program sprawdzający mi to zadanie na uczelni, podaje mi taki błąd :
Błąd konwersji zawartości pliku do tablicy float[]: string size must be a multiple of element size

Wiecie o co może chodzić?

//
//  main.c
//  23.11
//
//  Created by Piotr Kacprzak on 27/10/2018.
//  Copyright © 2018 Piotr Kacprzak. All rights reserved.
//

#include <stdio.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>

int randoma(int min, int max)
{
    int tmp;
    if (max>=min)
        max-= min;
    else
    {
        tmp= min - max;
        min= max;
        max= tmp;
    }
    return max ? (rand() % max + min) : min;
}
int main() {
    
    srand((float)time(NULL));
    FILE *fp;
    float tab[100];
    int i;
    float a;
    float*p_tab=&tab[0];
    char path[20];
    printf("Podaj sciezke\n");
    fgets(path,20,stdin);
    strtok(path,"\n");
    
    if((fp=fopen(path,"wb"))==NULL)
    {
        printf("Error");
        exit(1);
    }
    
    for(i=0;i<100;i++)
    {
        a=(randoma(-10000,10000))/100;
        *(p_tab+i)=a;
        fprintf(fp,"%f\n",*(p_tab+i));
     
        
        
    }
    
    printf("file saved\n");
    return 0;
}


2
Helliot napisał(a):

plik ma być binarny, a liczby mają być oddzielone nową linią

Yyy, co?

1 użytkowników online, w tym zalogowanych: 0, gości: 1