Ошибка выполнения - C (СИ)
Формулировка задачи:
Здравствуйте! столкнулся с проблемой:
Задача не хочет проходить ни одного теста, везде пишет ошибку во время выполнения ( версия компилятора GNU 4.9).
Может кто-то может подсказать, что ему не нравится?
#include<stdio.h>
struct student
{
char surname[100], name[100];
float mid;
}
main()
{
int N;
scanf("%d", &N);
int i, j;
float a, b, c, max[3]={-1, -1, -1};
struct student m[N];
for(i=0;i<N;i++)
{
scanf("%s%s%f%f%f", m[i].surname, m[i].name, &a, &b, &c);
m[i].mid=(a+b+c)/2;
if(max[0]<=m[i].mid)
{
if(max[0]!=m[i].mid)
{
max[2]=max[1];
max[1]=max[0];
max[0]=m[i].mid;
}
}
else if(max[1]<=m[i].mid)
{
if(max[1]!=m[i].mid)
{
max[2]=max[1];
max[1]=m[i].mid;
}
}
else if(max[2]<m[i].mid) max[2]=m[i].mid;
}
for(j=0;j<3;j++)
{
if(max[j]!=-1)
{
for(i=0;i<N;i++) if(m[i].mid==max[j]) printf("%s %s\n", m[i].surname, m[i].name);
}
}
}
Всё, разобрался) на версиях выше пятёрки почему-то компилятор не выдавал ошибку на строке 7: нету точки запятой после объявлении структуры
Решение задачи: «Ошибка выполнения»
textual
Листинг программы
typedef struct _student {
char surname[100], name[100];
float mid;
} student;
Объяснение кода листинга программы
- В данном коде определен тип структуры данных
student, которая содержит три поля:surnameтипаcharс длиной в 100 символов,nameтипаcharс длиной в 100 символов,midтипаfloat.
- В структуре данных
studentиспользуется массивcharдля хранения фамилии и имени студента. - Каждое поле структуры имеет свое уникальное имя и тип данных.
- Поля
surnameиnameмогут хранить строки (текст) длиной до 100 символов. - Поле
midможет хранить числовое значение типаfloat(число с плавающей точкой). - Структура данных
studentможет использоваться для представления информации о студенте в программе. - Программа может создавать экземпляры структуры
studentдля каждого студента, заполнять поля информацией о студенте и использовать эти данные в дальнейшем в программе. - Использование структур данных позволяет организовать информацию о студентах в удобном для программы формате и обеспечивает более эффективную работу с данными.