Определить количество отличников и средний бал каждого студента - C (СИ)

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

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

Ввести информацию по 3-м студентам (порядковый номер, Фамилия и три оценки) определить количество отличников и средний бал каждого студента Проблема в цикле! Помогите пожалуйста!Заранее спасибо!)
//---------------------------------------------------------------------------
#include <stdio.h>
#include <conio.h>
#include <string.h>
//---------------------------------------------------------------------------
struct student
{
int n;
char fio[20];
int bal[3];
};
int  main()
{
struct student st[100];
int i,j,kol=0,s=0;
float sr=0;
 
for (i=1; i<5; i++) {
st[i].n=i;
printf("Vvedite familiu %d ",i);
scanf("%s",st[i].fio);
for (i=0; i<3; i++) {
 printf("Vvedite ochenku: ");
 scanf("%d",&st[i].bal[j]);
 s=s+st[i].bal[j];
 }
sr=s/3;
if (s==15) {
 kol=kol+1;
}
printf("Sredniy ball = %5.3f\n",sr);
 
}
 
printf("Kolichestvo otlichikov = %d\n",kol);
getch();
return 0;
}
//---------------------------------------------------------------------------

Решение задачи: «Определить количество отличников и средний бал каждого студента»

textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <string.h>
//---------------------------------------------------------------------------
struct student
{
    int n;
    char fio[20];
    int bal[3];
};
 
int  main()
{
    struct student st[100];
    int i,j,kol=0,s=0;
    float sr=0;
 
    for (i=1; i<5; i++) {
        st[i].n=i;
        printf("Vvedite familiu %d ",i);
        scanf("%s",st[i].fio);
        printf("Vvedite ochenku: ");
        for (j=0; j<3; j++) {
            scanf("%d",&st[i].bal[j]);
            s=s+st[i].bal[j];
        }
        sr=(float)s/3; // изменил, т.к. при делении целых чисел возможна потеря 
        if (s==15) kol=kol+1;
        printf("Sredniy ball = %5.3f\n",sr);
        s=0; // не забываем обнулять сумму оценок
    }
 
    printf("Kolichestvo otlichikov = %d\n",kol);
    getch();
    return 0;
}
//---------------------------------------------------------------------------

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

  1. Включаем необходимые заголовочные файлы
  2. Объявляем структуру student для хранения информации о студенте
  3. Объявляем переменные и инициализируем их
  4. Запускаем цикл для ввода данных о студентах
  5. Вводим фамилию студента и оценки по трём предметам
  6. Вычисляем средний балл как отношение суммы оценок к их количеству
  7. Если сумма оценок равна 15, увеличиваем счётчик отличников на 1
  8. Выводим средний балл на экран
  9. Обнуляем сумму оценок
  10. Повторяем шаги 4-8 для всех студентов
  11. Выводим количество отличников на экран
  12. Завершаем программу

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


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

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

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