Вам нужно
result = scanf_s("%d", &temp->age);
и
result = scanf_s("%f", &temp->height);
Причина в том, что sscanf
(и друзьям) требуется указатель на выходную переменную, чтобы он мог сохранить результат там.
Кстати, у вас похожая проблема с параметром temp
вашей функции. Поскольку вы меняете указатель (а не только содержимое того, на что он указывает), вам нужно передать двойной указатель, чтобы изменения были видны за пределами вашей функции:
int FillInLinkedList(node** temp)
И тогда, конечно, вам придется внести необходимые изменения в функцию.