循环出错了?还是根本没循环?

计算下式的值,并显示在屏幕上

12+23+32+43+52+63…(2n)3   

#include
#include
int main()
{
int n;
double i,sum,result;
printf("Please input n: ");
scanf("%d",&n);
for(i=1,sum=0;i<=n;i++)
{
result=pow((2*i-1),2)+pow(2*i,3);
sum=sum+result;
}
printf("sum=%d\n",sum);
return 0;
}

不论输入的n是多少,输出的sum结果都是0

变量是double类型,应该使用%f输出

同楼上,但%f是float类型的,double用%lf

 #include<math.h>
#include<stdio.h>
int main()
{
    int n;
    double i, sum, result;
    printf("Please input n: ");
    scanf("%d", &n);
    for (i = 1, sum = 0; i <= n; i++)
    {
        result = pow((2 * i - 1), 2) + pow(2 * i, 3);
        sum = sum + result;
    }
    printf("sum=%lf\n", sum);
    return 0;
}