Давайте сначала поговорим о формате входных данных. Ваш список будет лучше отформатирован, если у вас будет только <coef>,<exp>
без запятой. Таким образом, у вас будет хороший шаблон для сопоставления. Таким образом, вы можете сделать что-то вроде:
fscanf(filep, "%d,%d", &coef, &exp)
чтобы получить значения. Вам следует проверить возвращаемое значение из fscanf, чтобы убедиться, что вы читаете 2 поля. Таким образом, если формат строки был набором следующего '<coef>,<exp><white-space>
' (где пробел - это либо один пробел, либо одна новая строка, вы могли бы сделать следующее:
do {
fscanf(filep, "%d,%d", &coef, &exp);
} while (fgetc(filep) != '\n');
Этот код позволяет вам получать пары до конца строки. В то время как условный будет съедать либо пробел, либо перевод строки. Вы можете заключить это в другой цикл для обработки нескольких строк.
Обратите внимание, что я НЕ проверял этот код, но суть его должна быть ясна. Прокомментируйте, если у вас есть еще вопросы.