Мне нужно, чтобы пользователь ввел 6 чисел, и я сохраняю их в массиве winNum []. Затем мне нужно прочитать файл, в котором есть группа пользователей firstName lastName и числа, которые они угадали. Мне нужно сравнить эти два массива и распечатать только имя и фамилию пользователя из файла, которому сопоставлено минимум три числа.
Это структура для пользователей входного файла
typedef struct
{
char firstName [20];
char lastName [20];
int numbers[6];
}KBLottoPlayer;
Получение выигрышных номеров от пользователя
int getNum()
{
int winningNum[6];
int i;
printf("Please enter the six nunbers between 1-53:\n");
scanf("%d %d %d %d %d %d", &winningNum[0], &winningNum[1],
&winningNum[2] ,&winningNum[3], &winningNum[4], &winningNum[5] );
}
Здесь я читаю файл и помещаю его в массив struct
KBLottoPlayer* readArray()
{
int i,size;
FILE *in = fopen("KnightsBall.in","r");
fscanf(in,"%d",&size);
KBLottoPlayer* temp;
temp =(KBLottoPlayer*)malloc(sizeof(KBLottoPlayer)*size);
if((in = fopen("KnightsBall.in", "r")) != NULL )
{
char buffer[100];
fgets(buffer, 5, in);
for(i=0;i<size;i++)
{
fscanf(in," %s %s ", temp[i].firstName, temp[i].lastName);
fscanf(in,"%d %d %d %d %d %d ", &temp[i].numbers[0],
&temp[i].numbers[1], &temp[i].numbers[2], &temp[i].numbers[3],
&temp[i].numbers[4], &temp[i].numbers[5]);
}
}
else
{
printf("File is Not Exist.\n");
}
return temp;
}
Мне по сути нужно хранить только имя и фамилию пользователей, которые получили 3 4 5 6 правильных выигрышных номеров.