С Новым годом! Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
21 / 19 / 6
Регистрация: 25.11.2017
Сообщений: 708
1

Как данные из файла записать в двумерный массив?

25.06.2019, 12:27. Показов 1281. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Итак, проходят соревнования по стрельбе. Участников 3 человек. Происходит оно в несколько кругов. Количество кругов неизвестно. Итак, в файле находится информация о результатах их стрельбы.
Вид файла:
Круг 1:
Участник 1
30
Участник 2
28
Участник 3
25
Круг 2:
Участник 1
27
Участник 2
28
Участник 3
29
.................
Для начала я определяю количество строк в файле. На один круг у меня уходит по 7 строк. Тем самым я определяю количество кругов, и размер двумерного массива.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h
#include <conio.h>
#include <stdlib.h>
int main()
{
int **array;
int count = 0, i = 0, j = 0;
FILE *ptr;
if ((ptr = fopen ("D:\\competition.txt","r")) == NULL)
{
perror("competition.txt");
return 1;
}
while(fscanf(ptr,"%[*\n]%*c") != EOF)
count++;
if(ferror (ptr))
printf(error);
count = count/7;
array=(int**)malloc(count*sizeof(int *));
for(i =0;i <count;i ++)
{
array[i]=(int*)malloc(3*sizeof(int));
for(j=0;j<3;j++)
{
array[i][j]=0;
}
}
// проинициализировал массив, а как заполнить его значениями из файла?
return 0;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.06.2019, 12:27
Ответы с готовыми решениями:

Как записать данные из файла в двумерный массив?
Дан файл координат вершин ломаной линии на плоскости. Определить, имеет ли ломаная линия...

Как записать значения из csv файла в двумерный массив?
Ситуация такова. Я новичок в C#. Как можно записать значения из csv файла в двумерный массив для...

Как считать данные с файла в двумерный массив?
В текстовом файле находится список студентов и год рождения, например: Фамилия Имя 1999...

Как из файла записать матрицу в двумерный массив типа double?
В файле есть матрица. Как из файла записать матрицу в двумерный массив типа double ?

3
Заблокирован
25.06.2019, 15:26 2
count сколько показывает?
0
21 / 19 / 6
Регистрация: 25.11.2017
Сообщений: 708
25.06.2019, 16:12  [ТС] 3
Pvt, в моем случае два. У меня получается двумерный массив разменом 3 на субботу. Но размер может варьироваться. Мне вот как считать файл и результаты записать в массив?
0
Заблокирован
25.06.2019, 16:38 4
странно, у меня while(fscanf(ptr,"%[*\n]%*c") != EOF) в себя уходит

Добавлено через 6 минут
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
char s[100];
.......
while(fgets(s,100,ptr))
  count++;
.......
    fseek(ptr,0,SEEK_SET);
    for(i=j=0; i<count; j++)
    {
        if(j==7)
        {
            i++;
            j=0;
        }
        fgets(s,100,ptr);
        if(j && j%2==0) 
        {
            sscanf(s,"%d",&n);
            array[i][j/2-1]=n;
        }
    }
    fclose(ptr);
ну и память надо бы чистить
0
25.06.2019, 16:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.06.2019, 16:38
Помогаю со студенческими работами здесь

Как записать и считать двумерный массив bool используя QTextStream из файла?
Как записать и считать двумерный массив bool используя QTextStream из файла?Необходимо определить...

Как записать данные с файла в массив?
нужно считать с файла (.ТХТ) два столбца и записать их в массив. Также нужна возможность выбора...

Как записать данные из файла в массив структур?
В коде я ввожу данные и их записывает в файл, помогите пожалуйста записать данные из файла в массив...

Как правильно записать данные в массив файла
Добрый вечер! Пишу программу работы с файлами(то есть создать, открыть, сохранить, заполнить,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru