题目要求
编写程序,求出 1-1/2+1/3-1/4......1/100
思路分析
学了这么多年数学,终于派上用上了,用数学知识,一看这题就得找算式规律
如果说都是分数,发散性思维,突破自我:1是不是可以转化为===> 1/1
然后多写几个
1/1 - 1/2 + 1/3 -1/4 + 1/5 - 1/6 + 1/7 - 1/8 .... + 1/99 - 1/100
分母为奇数时,符号为+
分母为偶数时,符号为-
定义变量sum来统计和===> 依据题意得是double型
撸写代码
#include<stdio.h>
int main()
{
int i;
double sum;
for(i=1;i<=100;i++)
{
if(i%2 !=0) //如果i是奇数
{
sum += 1.0 / i; //注意,考虑到保留小数1.0,而不是1
}
else //否则i就是偶数
{
sum -= 1.0 / i;
}
}
printf("sum = %.2f",sum); //一半情况保留小数点后两位,输出结果根据题目要求来
return 0;
}
测试结果
手测就搞小一点,1/1 - 1/2 + 1/3 约等于 0.83333
看看 和分析的一样