Код на Си не работает на Linux


Дело такое: надо сдать лабу в универе, на голом си (не плюсы, не шарп), писал на виндовс 10-все отлично работает (суть задания-вывести таблицу значений, заданную конечной суммой). В общем, на винде это выдает то, что показано на 2 скрине, но когда переписал это на линуксе (сдавать надо на нем)-ничего не вывело в строчке wprinf (саму таблицу по сути). Можете помочь, что надо сделать?
По дате
По рейтингу
Переделать программу нужно) Выдача значений "IND" из за переполнения факториала и зависание цикла на значениях x>=1 это не нормально)
1234567891011121314151617181920212223
#include <stdio.h>
#include <math.h>
int main() {
float x = 0, h = 0.1, e = 1e-4;
puts("-------------------------------------------");
printf("|%-10s|%-10s|%-10s|\n", " x", " left", " right");
puts("-------------------------------------------");
for (; x <= 2+h/2; x = x + h)
{
float left = cos(x), right = 0, elem = 1;
int fac = 0;
while (fabs(elem)>e)
{
right += elem;
elem *= -(x * x);
elem /= (fac + 1) * (fac + 2);
fac += 2;
}
printf("|%-10.4f|%-10.4f|%-10.4f|\n", x, left, right);
}
puts("-----------------------------------------");
}
Вы в программе не используете Кириллицу, зачем вам интернационализация? Уберите её. Используйте char* вместо wchar_t*, никаких L"", и setlocale