Мне дан текстовый файл с именем circle.txt
.Этот текстовый файл состоит из имен и номеров рубашек, таких как
Cameron 1
David 2
Dorothy 3
Heather 4
и т. Д. До 100
Так что я должен сделать проект, основанный на счетчике игры и одной частипроекта требуется создать круговой двойной связанный список, используя функцию void createGame(char* gameFile, int numOfPlayers);
для указанного количества игроков, чтобы каждая ссылка представляла игрока.Затем я должен установить имена и номера футболок для игроков на основе значений, считанных из файла.Таким образом, мой заголовочный файл со всеми функциями выглядит следующим образом:
countOust.h
#ifndef CountOust_h
#define CountOust_h
struct listNode
{
int hName; //represents numbers in file
char data[15]; // represents name in file
struct listNode *next;
struct listNode *prev;
};
typedef struct listNode sNode;
void createGame(char *gameFile, int numOfPlayers);
//void traverseFwd(sNode *list);
//void insertAt(sNode *list, sNode *player);
//void lRemove(sNode *player);
//void traverseBwd(sNode *list);
//void startGame();
#endif
Некоторые функции закомментированы, поскольку основное внимание уделяется функции createGame
.
Итак, я попытался заполнить ссылку в моем списке countOust.c
, используя fopen
, и цикл for с fscanf
.Я пробовал что-то вроде
countOust.c
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
#include <stdbool.h>
#include "CountOust.h"
void createGame(char *gameFile, int numOfPlayers)
{
FILE* f;
f = fopen(gameFile, "r");
// head = (struct sNode *)malloc(sizeof(sNode);
fscanf(f, "%s %d", head->data, &head->hName);
for (int i = 0; i < numOfPlayers - 1; i++)
{
}
fscanf(f, "%s %d", tail->data, &tail->hName);
}
^ Это выдает ошибку, потому что его мозговой штурм код
Мне нужен fscanf, который будет содержать строку и целое числопредставляющие имена в файлах и числа в файле.
Мне нужно установить пространство malloc для узла, и узел должен иметь ссылку на номер имени на следующий узел и ссылку на предыдущий узел.Затем мне нужно задать имя и номер, а затем установить указатель для узлов prev и next.
Итак, как мне создать круговой двойной связанный список и заполнить текстовый файл для имен игроков и номеров рубашек, используяfscanf, malloc, ссылаясь на узлы из моей структуры заголовочного файла, чтобы создать круговой двойной связанный список из текстового файла?