Написать поиск студента по зачетной книжке - C (СИ)

Узнай цену своей работы

Формулировка задачи:

#include<stdio.h>
#include"student.h"
#include<string.h>
 
void student(struct Students *students)
{
            printf("NZBook:%s\n",students->NZBook);
            printf("name:%s\n",students->name);
            printf("exzamen:%s\n",students->exzamen);
            printf("mark:%i\n\n",students->mark);
}
 
void print_students(struct Students *students, int c)
{
    int i;
    for(i=0;i<c;i++)
        student(&students[i]);
    
}
 
void searchGroup (student)
{
    char NZBook [20] = {};
    printf("VVedite number zachetnoy book\n");
    scanf("%s",NZBook);
}
 
int printMenu ()
    {
        char *menu[]=
        {
            "print_students",
            "searchGroup",
            "EXIT",
        };
 
        const int menuCount = sizeof menu/sizeof menu[0];
        int i;
        for (i=0; i<menuCount; i++)
        printf("%i. %s\n", i+1, menu[i]);
        return getc(stdin);
    };
    
int main()
{
    struct Students students[]=
    {
        {"859536","Ronaldo","Russ",4},
        {"859536","Ronaldo","Ukrain",2},
        {"859536","Ronaldo","Fvs",5},
        {"348754","Messi","English,",5},
        {"348754","Messi","Ukrain",5},
        {"348754","Messi","Russ",5},
        {"647903","Ves","Mathemat",3},
        {"647903","Ves","FVS",5},
        {"647903","Ves","Histori",3},
        {"845256","Mark","Russ",5},
        {"845256","Mark","FVS",5},
        {"845256","Mark","English",5},
    };
    
    int r;
    printf("----MENU----\n");
    while((r=printMenu())!='4')
    switch(r) 
    {
        case '1': print_students(students, sizeof students /sizeof (struct Students));break;
        case '2': searchGroup(students);break;
        case '3': printf("EXIT\n");break;
        case '4': break;
    }
    return 0;
}
struct Students{
    char NZBook[20];
    char name[100];
    char exzamen[100];
    int mark; //"1","2","3","4","5";
};
как написать поиск студента по зачетной книжке? И как посчитать средний бал для выбранного студента?

Решение задачи: «Написать поиск студента по зачетной книжке»

textual
Листинг программы
struct Examen
{
    char name[25];
    int mark; // 1-5
};
 
struct Students
{
    char NZBook[20];
    char name[100];
    struct Examen e[5];
    double calcAveMark() const
    {
        int sum = 0, i;
        for (i=0; i < 5; i++)
            sum += e[i].mark;
 
        return sum / 5.0;
    }
};

Объяснение кода листинга программы

В этом коде определены две структуры данных: Examen и Students.

  1. Структура Examen содержит имя студента (name) и оценку за экзамен (mark). Значения этих переменных представлены в кавычках.
  2. Структура Students содержит зачетную книжку студента (NZBook), имя студента (name) и массив оценок за экзамены (e). Также в структуре есть метод calcAveMark(), который вычисляет среднюю оценку студента. Значения переменных в этом методе представлены в кавычках.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы