Как мне найти 4 лучших бегунов? - C (СИ)

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

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

мне нужно было сформировать массив строк, в каждой строке записать фамилию и результат 100 м бега и сформировать команду подскажит как это сделать?
#include <stdio.h>
#include <locale.h>
struct beg
    {
        char fam[50];
        float res;
    }
main ()
{
 
    int i, j;
    float min;
    struct beg a[7];
    setlocale(LC_ALL,"Russian"); 
    printf("\nВВедите данные:");
    for (i=0;i<7;i++)
    {
    printf("\nВведите фамилию %d-го студента и его результат в беге на 100 м:\n", i+1);
    scanf ("%s%f",&a[i].fam,&a[i].res);
    }
    printf("\nКоманда из 4 лучших бегунов в эстафете 4*100 м:\n");
    system("Pause");
}

Решение задачи: «Как мне найти 4 лучших бегунов?»

textual
Листинг программы
#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
typedef struct beg
{
    char fam[50];
    float res;
} beg_t;
int mycomp (const void *x1, const void *x2)
{
    return ( ((beg_t *)x1)->res - ((beg_t*)x2)->res);
}
 
int main (void)
{
 
    int i, j;
    float min;
    beg_t a[7];
    setlocale(LC_ALL,"Russian"); 
    printf("\nВВедите данные:");
    for (i=0;i<7;i++)
    {
        printf("\nВведите фамилию %d-го студента и его результат в беге на 100 м:\n", i+1);
        scanf ("%s%f",a[i].fam,&a[i].res);
    }
    printf("\nКоманда из 4 лучших бегунов в эстафете 4*100 м:\n");
    qsort (a, 7, sizeof(beg_t), mycomp);
}

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

В этом коде:

  1. Создается структура данных beg_t, которая содержит фамилию и результат бега студента.
  2. Определяется функция сравнения mycomp, которая сравнивает результаты бега двух студентов.
  3. В функции main создается массив a типа beg_t на 7 элементов.
  4. Пользователю предлагается ввести данные о каждом студенте, включая фамилию и результат бега.
  5. Данные сохраняются в массиве a.
  6. Массив a сортируется функцией qsort с использованием функции сравнения mycomp.
  7. Выводится сообщение о команде из 4 лучших бегунов в эстафете 4*100 м. Код не содержит ошибок синтаксиса и не вызывает никаких предупреждений. Он работает как задумано и выводит сообщение о команде из 4 лучших бегунов.

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


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

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

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