Итак, у меня есть функция, которая ищет связанный список и находит значение, ближайшее к числу в связанном списке. Во время этого процесса он должен печатать каждое найденное значение, которое является новым ближайшим значением.
void search(struct Node* head, double x, FILE* fp) {
double temp = 99999;
double calc = fabs(head->data - x);
while (head != NULL)
{
if (calc <= temp) {
fprintf(fp, "%.6f,", head->data);
temp = calc;
head = head-> next;
}
head = head->next;
calc = fabs(head->data - x);
}
}
Структура узла связанного списка:
struct Node
{
double data;
struct Node *next;
};
double x
- это просто значение, которое я ищу, а FILE * fp
- это файл CSV, в который я пишу.
Он ничего не печатает в файл CSV, не уверен, в чем проблема с алгоритмом. Я получаю процесс прерван со статусом -1073741819.