Определить количество отличников и средний бал каждого студента - 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;
}
//---------------------------------------------------------------------------
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Объявляем структуру
studentдля хранения информации о студенте - Объявляем переменные и инициализируем их
- Запускаем цикл для ввода данных о студентах
- Вводим фамилию студента и оценки по трём предметам
- Вычисляем средний балл как отношение суммы оценок к их количеству
- Если сумма оценок равна 15, увеличиваем счётчик отличников на 1
- Выводим средний балл на экран
- Обнуляем сумму оценок
- Повторяем шаги 4-8 для всех студентов
- Выводим количество отличников на экран
- Завершаем программу