Напечатать список студентов мужского пола с указанием их возраста - C (СИ)
Формулировка задачи:
помогите найти пожалуйста ошибку на типизированый файл.
Условие: Сформировать файл “stud”, имеющий следующую структуру: фамилия студента, пол(буква), год рождения. Напечатать список студентов мужского пола с указанием их возраста. В конце списка напечатать средний возраст.
Буду сильно благодарен за помощ!
#include <stdio.h> #include <conio.h> #include <string.h> #define n 2 struct swed { char fam[10], pol[10]; int god; }; main() { FILE *f=NULL; struct swed d; int i; int k; int t; float s; clrscr(); if((f=fopen("bibliot.dat","wd")) == NULL) {printf("ochibka"); getch(); return;} for (i=0; i<n; i++) { printf("family: "); scanf("%s", &d.fam); printf("pol: "); scanf("%s", &d.pol); printf("vozrast: "); scanf("%s", &d.god); write(f);} t=0; k=0; while(!feof(f)){ fread(&d, sizeof(struct swed), 1,f); {if(d.pol=="m") printf(d.fam); printf(d.god); {k+=1; t+=d.god; s=t/k;}} printf("s= ",s); fclose(f); getch(); }
Решение задачи: «Напечатать список студентов мужского пола с указанием их возраста»
textual
Листинг программы
if((f=fopen("bibliot.dat","wd")) == NULL)
Объяснение кода листинга программы
- В этом коде используется функция fopen, которая открывает файл
bibliot.dat
для записи (режимw
). - Если файл не может быть открыт (например, если он уже открыт в другой программе или не существует), то код выполняет действие, указанное после оператора if (в данном случае, ничего не делает).
- Переменная
f
используется для хранения дескриптора файла, который нужен для работы с файлом. - В данном случае, если файл не может быть открыт, переменная
f
будет равна NULL.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д