Исправить ошибку: "Cannot convert "STUDENTS**" to int" - C (СИ)
Формулировка задачи:
#include <stdio.h>
#include <conio.h>
#include<alloc.h>
#include <string.h>
#define kstud 10
typedef struct {int day; int month; int year;} DATE;
typedef struct {char *name;char gender;int sumball;DATE born;} STUDENTS;
void vvod(STUDENTS group[],STUDENTS *Ukazatelgroup[],int number)
{
int i;
printf("Vvod dannix gruppi studentov:\n");
for (i=0; i<number; i++)
{ printf ("%2d.",i+1);
fflush (stdin);
printf("Vvedite Familiu Imia i Otchestvo studenta: ");
(group+i)->name=(char*)malloc(31);
gets((group+i)->name);
fflush (stdin);
printf("Vvedite pol(m ili w ): ");
scanf("%c",&(group+i)->gender);
printf ("Data rogdeniya?(day_month_year): ");
fflush (stdin);
scanf("%i%i%i",&(group+i)->born.day,&(group+i)->born.month,&(group+i)->born.year);
printf ("Summarnei ball?: ");
scanf("%d",&(group+i)->sumball);
fflush (stdin);
Ukazatelgroup[i]=group+i;
}
}
void vivod(STUDENTS *group[], int number)
{
int i;
puts("Student: Pol: Sumball: Data rozdenia: ");
for (i=0;i<number;i++)
printf ("%d%-12s%-6c%-12i%-4i%-4i%-4i\n",i+1,group[i]->name,group[i]->gender,group[i]->sumball,group[i]->born.day, group[i]->born.month, group[i]->born.year);
free (group[i]->name);
}
int filter(STUDENTS *pStudents[], STUDENTS *pSortedStudents[],int number)
{
int i,nmb=0 ;
for (i=0;i<number;i++)
{ if( (pStudents[i]->sumball == 9) && ( pStudents[i]->gender == 'm' ))
{ pSortedStudents[nmb] = pStudents[i];
nmb = nmb + 1;
}
}
return nmb;
}
void main()
{
int ks;
STUDENTS group[kstud];
STUDENTS *Ukazatel_filtered_group[kstud];
STUDENTS *Ukazatelgroup[kstud];
int filtered_nmb = 0;
printf("Vvedite kolichestvo studentov v gruppe(ne bolshe 10!):\n");
scanf("%i",&ks);
vvod(group,Ukazatelgroup,ks);
printf("Dannie studentov:\n");
vivod(Ukazatelgroup,ks);
filtered_nmb=filter(Ukazatelgroup,Ukazatel_filtered_group,ks);
int filter(Ukazatelgroup,Ukazatel_filtered_group,ks);
[COLOR=Red] // Cannot convert"STUDENTS**" to int
// } expected[/COLOR]
printf("Spisok bez sortirovki:\n");
vivod(Ukazatel_filtered_group,filtered_nmb);
}Решение задачи: «Исправить ошибку: "Cannot convert "STUDENTS**" to int"»
textual
Листинг программы
int filter(Ukazatelgroup,Ukazatel_filtered_group,ks);