求1-1/2+1/3-1/4到-1/100的值的一道题
int main()
{
int sign,deno;
double sum, term;
sum = 1;
sign = 1;
deno = 2;
while (deno <= 100)
{
sign = -1 * sign;
term = sign / deno;
sum = sum + term;
deno = deno + 1;
}
printf("%f\n", sum);
return 0;
}
为何定义deno为double 就能得到答案
而定义int就输出为1呢
在算法中deno好像一直是整数啊!