Перемещение данных из одной программы в другую с использованием файловых структур c - PullRequest
0 голосов
/ 09 ноября 2018

Программа (A) -----> file.txt -----> Программа (B)

^ Это формат, который я использую, в настоящее время у меня недостаточно знаний о файловых структурах. Мой текстовый файл называется myStudents.txt

РЕДАКТИРОВАТЬ: Программа (A) записывает информацию правильно. Программа (B) должна получить информацию из текстового файла.

#include<stdio.h>

int main()
{
    char studentName[50];
    int grade=0;

    printf("Which students grade would you like to retrieve?: ");
    scanf("%s",&studentName);

    FILE *fptr;
    fptr = (fopen("myStudents.txt", "r"));

    if(fptr == NULL)
    {
        printf("Error!");
        exit(1);
    }
    printf("\nStudent details:\n");
    fscanf(fptr,"%d %[^\n]s",grade,studentName);
    printf("Name: %s\n",studentName);
    printf("Grade: %d\n",grade);

    fclose(fptr);
return 0;
}

Я очень озадачен тем, как использовать информацию программы A в программе B. Извинения, если это повторяющаяся тема, я не смог найти информацию здесь или где-либо еще для решения моей проблемы.

* Примечание (Точное объяснение было бы очень полезно наряду с любой конструктивной критикой)

Ура! Хорошего дня!

1 Ответ

0 голосов
/ 09 ноября 2018

Ваша программа B фактически не ищет никакого имени, она просто пытается напечатать первое. Я не буду писать полный код для вас, но вот небольшая помощь в том, что ваша программа должна делать:

  1. читать в файл построчно. (могут быть полезны функции fscanf, fgets или getline)
  2. извлеките имя и оценку из строки. (sscanf и все строковые функции)
  3. проверьте, является ли имя тем, которое вы ищете, если да, распечатайте его и остановите.

Это, конечно, только пример того, как может выглядеть программа, но я предлагаю начать с реализации этих шагов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...