题目描述
输入一个整数n,输出数列1-1/3+1/5-……前n项的和。
输入
输入只有一个整数n。
输出
结果保留2为小数,单独占一行。
样例输入 Copy
3
样例输出 Copy
0.87
#include<stdio.h>
int main()
{
int n,i;
double sum,p,m;
scanf("%d",&n);
sum=0.0;
p=1.0;
m=1.0;
for(i=1;i<=n;i++)
{
sum+=m/p;
p+=2;
m=-m;
}
printf("%.2f",sum);
return 0;
}
其中因为sum代表各数相加结果是带小数点的,故应用double,其中m为分子由题目要求,同样p为分母,按要求不断加二,而变量m是用改变符号的故要如此,此语句中必须使用for循环语句。