注意:计算时1要用double类型即1.0。
- 奇数偶数分开计算,再合并。
#include<stdio.h> int main() { int i; double sum=0,sum1=0,sum2=0; for(i = 1;i <= 99;i+=2) { sum1=sum1+1.0/i; } for(i = 2;i <= 100;i+=2) { sum2=sum2-1.0/i; } sum=sum1+sum2; printf("%lf",sum); return 0; }
- 用flag做标签控制+1,-1。
#include<stdio.h> int main() { int i; double sum = 0; int flag = -1; for(i = 1;i <= 100;i++) { flag*=-1; sum+=flag*(1.0/i); } printf("%lf",sum); return 0; }
- 用函数pow pow(-1,i+1)相当于(-1)^(i+1)
#include<stdio.h> #include<math.h> int main() { int i; double sum = 0; for(i = 1;i <= 100;i++) { sum+=pow(-1,i+1)*(1.0/i); } //pow(-1,i+1)相当于(-1)^(i+1) printf("%lf",sum); return 0; }
时间: 2024-12-28 08:22:35