Program(A)-----> plik.txt-----> Program(B)
^To jest format, którego używam, obecnie nie mam wystarczającej wiedzy o strukturach plików. Mój plik tekstowy nazywa się myStudents.txt
EDYCJA: Program(A) zapisuje informacje poprawnie. Program(B) musi pobrać informacje z pliku tekstowego.
#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;
}
Jestem bardzo zdezorientowany, jak wykorzystać informacje z programu A w programie B. Przepraszam, jeśli jest to powtarzający się wątek, nie mogłem znaleźć tutaj ani nigdzie indziej informacji, aby rozwiązać mój problem.
*Uwaga (solidne wyjaśnienie byłoby bardzo pomocne wraz z konstruktywną krytyką)
Twoje zdrowie! Miłego dnia!
1 odpowiedź
Twój program B tak naprawdę nie szuka żadnej nazwy, po prostu próbuje wydrukować pierwszą. Nie napiszę dla ciebie całego kodu, ale oto mała pomoc w tym, co twój program powinien zrobić:
- wczytaj plik wiersz po wierszu. (funkcje
fscanf
,fgets
lubgetline
mogą być przydatne) - wyodrębnij nazwę i ocenę z wiersza. (
sscanf
i wszystkie funkcje ciągów) - sprawdź, czy nazwa jest tym, którego szukasz, jeśli tak, wydrukuj i przestań.
To oczywiście tylko przykład, jak mógłby wyglądać program, ale proponuję zacząć od wdrożenia tych kroków.
Podobne pytania
Nowe pytania
c
C jest językiem programowania ogólnego przeznaczenia, używanym do programowania systemów (system operacyjny i systemy wbudowane), bibliotek, gier i wielu platform. Ten znacznik powinien być używany w przypadku ogólnych pytań dotyczących języka C, zgodnie z definicją w standardzie ISO 9899 (najnowsza wersja 9899: 2018, chyba że określono inaczej - również oznaczanie żądań dotyczących wersji za pomocą c89, c99, c11 itd.). C różni się od C ++ i nie należy go łączyć ze znacznikiem C ++ bez racjonalnego powodu.