Я должен объявить вектор с типом «struct», который для каждого n студентов создает значение для группы, к которой принадлежит студент (который похож на счетчик), их имена и их оценки.Правильное использование структур и указателей
Программа должна вывести имя студентов с наивысшим классом, найденным в этих группах. Я должен выделить вектор в куче (я знаю только теоретическое объяснение кучи, но я не знаю, как его применять), и я должен пройти через вектор с помощью указателей.
Например, если я дам n значение 4, будет 4 ученика, и программа выведет максимальную оценку вместе с их именами, как показано на рисунке here.
Это будет выводить Ана 10 и Ева 10.
Я дал ему попробовать, но я понятия не имею, как расширить его или исправить его, так что я ценю всю помощь я могу получить с пояснениями, если это возможно на практическое применение кучи и указателей в этом типе проблемы.
#include <stdio.h>
#include <stdlib.h>
struct students {
int group;
char name[20];
int grade;
};
int main()
{
int v[100], n, i;
scanf("%d", n);
for (i = 0; i < n; i++) {
v[i].group = i;
scanf("%s", v[i].name);
scanf("%d", v[i].grade);
}
for (i = 0; i < n; i++) {
printf("%d", v[i].group);
printf("%s", v[i].name);
printf("%d", v[i].grade);
}
return 0;
}
Здесь я просто пытался создать вектор, ничего не работает, хотя ..
'зсапЕ ("% d", n); '->' scanf ("% d", &n); 'и' scanf ("% d", v [i] .grade); '->' scanf ("% d ", & v [i] .grade);' – kaylum