Написать процедуру поиска/распечатки студентов, успевающих по заданному предмету - C (СИ)

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

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

Представить данные о студентах института в виде массива записей со структурой. Студент Ф.И.О Кол-во предметов (<=N) Предмет1 Оценка1 ... ПркдметN ОценкаN Написать процедуру поиска/распечатки успевающих по задонному предмету.

Решение задачи: «Написать процедуру поиска/распечатки студентов, успевающих по заданному предмету»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#define N 10
#define K 5
struct Student
{
   char fio[50];
   int kolvo;
   int Marks[N];
};
int main()
{
   int i,j,nom;
   struct Student  ss[K];
   setlocale(LC_ALL,"Rus");
   for(i=0;i<K;i++)
   {
         printf("Студент №%d. Введите фамилию к-во предметов и оценки\n",i);
         scanf("%s%d",ss[i].fio,&ss[i].kolvo);
         for(j=0;j<ss[i].kolvo;j++)
              scanf("%d",&ss[i].Marks[j]);
   }
   printf("Введите номер предмета для поиска:");
   scanf("%d",&nom);
   printf("\nСписок успевающих по предмету №%d\n",nom);
   for(i=0;i<K;i++)
   {
        if(ss[i].Marks[nom]>=3)
              printf("%s %d\n",ss[i].fio,ss[i].Marks[nom]);
   }
   getch();
   return 0;
}

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

  1. Подключение необходимых библиотек для работы с консолью и вводом/выводом данных
  2. Объявление структуры данных Student с полями: фамилия студента (fio), количество предметов (kolvo) и массив оценок по предметам (Marks)
  3. Инициализация переменных для работы с консолью и вводом/выводом данных
  4. Ввод данных о студентах с помощью цикла for и функции scanf. Сначала вводится фамилия студента, затем количество предметов и оценки по каждому предмету
  5. Ввод номера предмета для поиска с помощью функции scanf
  6. Вывод списка студентов, которые успевают по заданному предмету с помощью цикла for и условного оператора if. Если оценка по заданному предмету больше или равна 3, то выводится фамилия студента и оценка по этому предмету
  7. Вызов функции getch для приостановки выполнения программы до нажатия клавиши
  8. Возврат 0, что означает успешное завершение программы

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


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

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

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