Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C (СИ) Двумерные массивы Дана матрица размерности 4х4. Матрица вводится с клавиатуры. Вывести заполненную матрицу на экран. Заменить элементы с четными индексами в каждой i-й строке на сумму всех нечетных элементов i-й строки матрицы. Вывести матрицу на экран. Найти и вывести на экран минимальный элемент главной диагонали и его индексы. Найти и вывести на экран минимальный элемент побочной диагонали и его индексы.... https://www.cyberforum.ru/ c-beginners/ thread2349588.html C (СИ) Написание кода!
1) Даны натуральное число n и действительное x. Вычислить: S=sin x+ sin^2 x +…+sin^n x. 2)Написать программу, которая вычисляет среднее арифметическое последовательности дробных чисел, вводимых с клавиатуры. После ввода последнего числа программа должна вывести минимальное и максимальное число последовательности и их номера в последовательности. Количество чисел последовательности должно...
C (СИ) Лаба на вычисление простого выражения(вычитание) https://www.cyberforum.ru/ c-beginners/ thread2349557.html
#include<stdio.h> #include<stdlib.h> #include<locale.h> #include<malloc.h> #include<string.h> #include<math.h> #pragma warning(disable:4996) #define _NO_DEBUG_HEAP
C (СИ) В чем ошибка #include <stdio.h> #include <stdlib.h> #include <math.h> #define e 1e-5 int main() { double x, sum,n = 1; int i=3; printf ("x = "); scanf ("%lf", &x); https://www.cyberforum.ru/ c-beginners/ thread2349542.html
Определить, какой символ в ней встречается раньше: 'x' или 'w' C (СИ)
Ввести строку с клавиатуры. Определить, какой символ в ней встречается раньше: 'x' или 'w'. Если какого-то из символов нет, вывести сообщение об этом. как в си найти какой символ встречается раньше в строке? хелп
C (СИ) Вставка элемента в массив за счёт сдвига вправо https://www.cyberforum.ru/ c-beginners/ thread2349483.html
Привет всем,помогите кто-нибудь исправить функцию в лабе я весь день сижу на лабе,уже бошка не варит:Вставка символа в массив. Буду благодарен! char *InsertSymbolTochka(char *new_resultwithTochka,char d) { char *pt, *qt; int posforTochka = 4;//позиция для вставки символа int len; len = strlen(new_resultwithTochka); // Эта функция возвращает длину без учета ‘\0' if ( posforTochka <...
C (СИ) Не могу понять что эта строчка делает system("chcp 1251>nul"); вот код #include <stdio.h> #include <stdlib.h> int main () https://www.cyberforum.ru/ c-beginners/ thread2349480.html Одномерные массивы C (СИ)
Помогите с задачками, пожалуйста 1. Найти в массиве элемент, который повторяется максимальное количество раз, и если таких элементов несколько - то на экран вывести большее из них Я написал только часть кода, который выводит число, которое повторяется максимальное количество раз, мне нужно продолжить и дописать часть кода, которая будет проверять эти числа(если их оказалось несколько) и...
C (СИ) Программа не работает в Вижуал студии (2010) https://www.cyberforum.ru/ c-beginners/ thread2349435.html
#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <time.h> #include <locale.h> int main (void)\ { srand((unsigned)time(NULL)); setlocale(LC_ALL, "rus"); int N;
C (СИ) Удаление вхождений второй строки из первой https://www.cyberforum.ru/ c-beginners/ thread2349405.html
Начинаю познавать программирование с K&R C, раздел инкрементирования. Хочу написать программу, которая бы удаляла все вхождения второго массива из первого. Как изменить программу так, чтобы она удаляла не только слова? (буквы, наборы букв и т.д.) #define F 80 #define W 10 /* удаление всех вхождений s_what в s_from */ void main () { char s_from, s_what; gets (s_from); gets (s_what); int...
Трехмерный массив C (СИ)
Трехмерный массив описывает журнал фиксации среднесуточной температуры в течение 10 календарных лет. Каждая страница журнала описывает один год, номера строк соответствуют месяцам года, а номера столбцов – дням месяца (считать, что в каждом месяце 30 дней). Определить самый жаркий и самый холодный дни в каждом календарном году и за весь период наблюдения (указать даты и температуру воздуха).
C (СИ) Определить, встречается ли в десятичной записи числа n десятичная запись числа m https://www.cyberforum.ru/ c-beginners/ thread2349299.html
Даны натуральные числа n (n>100) и m (10<m<99). Определить, встречается ли в десятичной записи числа n, десятичная запись числа m, если встречается, то сколько раз. ПОМОГИТЕ пожалуйста, не могу разобраться!
0 / 0 / 0
Регистрация: 17.08.2017
Сообщений: 30
0

Запись данных из файла в связанный список - C (СИ) - Ответ 13050714

12.11.2018, 00:26. Показов 683. Ответов 3
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте,
нужно выгрузить данные про песни (название, год, альбом итд) из файла в связнный список. Каждая одна песня- список. В файл они были загружены тоже с помощью списка. Но я теперь не знаю как из файла выгрузить данные в виде списка а потом знать указатель на первый элемент.
Вот код, который я попробовала написать
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
30
31
32
33
34
35
36
37
38
39
40
41
void loaddb(void){
for (;;)
    {
    list *head;
    FILE *f;
    printf("\ntransfer the database file in one folder with program and enter the name of the database file\n");
    scanf("%s",fname);
    printf("\n Your entered: %s", fname);
    f=fopen(fname, "r+");
    if(f==NULL)  {printf(" file does not exist");}
    else {printf("  file opened ");
    list *head=NULL;
    while ( feof (f) == 0) {
          if (head==NULL)
          {list *p=(list*)malloc(sizeof(list));
          p->next=head;
          fscanf(f, "Song title: %s \tAlbum: %s\tYear: %d\tGenre:%s \tLength (min, sec) %d:%d \tArtist: %s\tbelong to pl: %d\tID: %p\r\n",p->data.title,p->data.album,&p->data.year,p->data.genre,&p->data.length.min, &p->data.length.sec, p->data.artist,&p->data.pl,p->data.id);
          }
          else {
          list *p;
          for (p=head; p->next != NULL; p=p->next){
          p->next=(list*)malloc(sizeof(list));
          p->next->next=NULL;
          fscanf(f, "Song title: %s \tAlbum: %s\tYear: %d\tGenre:%s \tLength (min, sec) %d:%d \tArtist: %s\tbelong to pl: %d\tID: %p\r\n",p->next->data.title,p->next->data.album,&p->next->data.year,p->next->data.genre,&p->next->data.length.min, &p->next->data.length.sec, p->next->data.artist,&p->next->data.pl,p->next->data.id);
}
          }
    }
 
    if (ferror(f))
        printf("err\n");
     }
 
    printf("\nTo return to the main menu press 'a', to exit from the program press 'b', to repeat press any other character\n");
    char choice;
    scanf(" %c", &choice);
    if (choice == 'a')
            main_menu(head);
    else if (choice == 'b')
            exit(0);
    }
}
Знаю, наверное много косяков, но помогите, пожалуйста, как это можно правильно написать?
В файле каждая песня разделена вот этим \r\n . Выглядит подобным образом:
Song title: One Album: One Year: 1 Genre:one Length (min, sec) 1:1 Artist: one belong to pl: 1 ID: 00B40D48
Song title: two Album: two Year: 2 Genre:two Length (min, sec) 2:2 Artist: two belong to pl: 0 ID: 00B40E18

Вернуться к обсуждению:
Запись данных из файла в связанный список C (СИ)
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.11.2018, 00:26
Готовые ответы и решения:

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

Запись в связный список из файла
Описание списков: typedef struct name { char first_name; char last_name; int...

Сформировать циклический связанный список (очередь)
Сформировать циклический связанный список (очередь), содержащий последовательность целых чисел,...

Построить в динамической памяти линейный связанный список строкового типа данных
Задание: Построить в динамической памяти линейный связанный список строкового типа данных....

3
12.11.2018, 00:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.11.2018, 00:26
Помогаю со студенческими работами здесь

Линейно-связанный список: вывести список положительных и отрицательных чисел
Дано неотрицательное N и набор из N чисел. Создать линейно-связанный список, содержащий исходные...

Связанный список. Создать, записать в связный список последовательность слов,обозначающих месяцы года,заданных пользователем
Создать связанный список.Кроме информационных полей он должен обязательно содержать указатели на...

Связанный список
Есть таблица состоящая из двух столбцов(максимум 100 строк) на листе1. Пусть это будут столицы...

Связанный список
Не могу обратиться к методу класса Node хотя они выраженны как public: void addNode(int d); void...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru