1-1/3!+1/5!-1/7!........的和 c语言怎么写

如题所述

#include<stdio.h>
void main()
{
double sum=0,temp=1,s=1;
int n,count=0,i=1;
scanf("%d",&n);/*要计算的式子的个数,通式是:(-1)*(n-1)/(2n-1)!,如:n=3,就是1/5!*/
while(i<=n)
{
sum+=1/temp;/*分母上的数要除*/
s*=((s+1)*(s+2));/*找到后一项与前一项的关系*/
if(count%2==0)
temp=-s;
else
temp=s;
count++;
i++;
}
printf("sum=%f\n",sum);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-13
我写思路吧!
1、编写一个求n!的函数。取名为 mul(int n); 用for循环就可以实现。
2、main()中也是用for循环实现,只是要加上符号为的控制,可以用对某个变量(init=1)的取反得到(init=~init;)
3、你需要对循环的次数进行控制,输入一个x。计算到x!停止。
第2个回答  2013-04-13
#include<stdio.h>
void main(){
int n;
int t = 1;
int m = 0;
double sum = 0.0;
printf("请输入一个大于0的奇数:");
scanf("%d",&n);
for(int i = 1; i <= n; i++)
{
t *= i;
if(i % 2 ==1)
{
m++;
if(m % 2 == 1)
sum += 1.0/t;
else
sum -= 1.0/t;
}
}
printf("%lf\n",sum);
}本回答被网友采纳
第3个回答  2013-04-13
无限循环了根部不对的。
第4个回答  2013-04-13
这道题好像不对,无限循环了
相似回答