Создать структуру данных в файле - C (СИ)
Формулировка задачи:
помогите пожалуйста создать структуру данных в файле.
Память для массивов должна быть распределена динамично (малок, калок, реалок, фри)
я не знаю как это сделать
#include <stdio.h>
#include <stdlib.h>
int main()
{
char fam[30],name[30];
int ball[3];
int i,j,a=0;
int sred;
FILE *f=fopen("data.txt","rt");
FILE *f1=fopen("rez.txt","w+");
if (f == NULL)
printf ("Nepavyko atidaryti failД… \n");
else
printf ("Failas atidarytas skaitymui \n");
for (i=0; i<5; i++)
{
fscanf (f,"%s %s %d",fam,name, &ball[i]);
sred=0;
if (ball[i]>8)
{sred=ball[i];
fprintf (f1,"%s %s %d\n",fam,name, sred);}
else printf("\n");
}
fclose(f1);
printf("Darbas baigtas\n");
fclose(f);
return 0;
}Решение задачи: «Создать структуру данных в файле»
textual
Листинг программы
int * mas= (int*) malloc(n);
for (int i = 0; i < n; i++)
{mas[i] = rand() % 26 ;
printf("%d\t",mas[i]);}
free(buffer);
Объяснение кода листинга программы
- В начале кода объявляется переменная типа int с именем
n, которая содержит размер массива. Значение этой переменной должно быть положительным числом, не превышающим 26. - Далее, с помощью оператора malloc, выделяется память под массив целых чисел типа int.
- Затем, в цикле for, происходит заполнение массива случайными числами от 0 до 25 с помощью функции rand().
- Каждое сгенерированное число присваивается элементу массива с соответствующим индексом.
- В конце цикла, с помощью функции printf, выводится значение каждого элемента массива.
- После выполнения всех операций, с помощью функции free, освобождается выделенная память.