Есть несколько проблем с кодом:
int sum = 0;
Промежуточные результаты не являются целыми числами, это должно быть двойное значение
int i = 1.0;
Поскольку вы будете использовать это в делении, оно должно быть двойным, 1/2 равно 0, если рассчитано в целых числах.
int n = 5.0;
Это целое число, а не значение с плавающей запятой, нет нуля 0.
for(i=1;i<=n;i++)
Вы уже инициализировали i для 1, зачем это снова?
sum = (-1)^i*(i/(i+1));
На каждой итерации вы теряете предыдущее значение, вы должны использовать sum + = 'new values'
Кроме того, вам не нужен pow для вычисления (-1)^i
, все, что он делает, это переключается между +1 и -1 в зависимости от нечетного / четного состояния i
. Вы можете сделать это проще с помощью оператора if
или с 2 for
, один для нечетных i
, один для четных ... На самом деле много вариантов.