void rating people manH people manT Вывод информации тестируемых для п

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
void rating(people *manH, people *manT)//Вывод информации о тестируемых для пользователей //-+
{
int cur_max=-1, count=0, i,c, cIndex;
people *cur=manH, *best=manH;
bool *flags;
while(cur) // нахождение максимального элемента
{
count++;
cur=cur->left;
}
flags=(bool*)calloc(count,sizeof(bool));
cur=manH;
for(cIndex=c=i=0;i<count;i++)
{
while(cur)
{
if((cur->iq >= cur_max) && (!flags[c++]))
{
cur_max=cur->iq;
best=cur;
cIndex=c-1;
}
cur=cur->left;
}
printf("iq=%d\n",best->iq);
cur_max=-1;
flags[cIndex]=true;
c=0;
cur=manH;
}
free(flags);
getch();
}