用C求1!+2!+3!..............+10!的和,求哪位大侠帮我修改一下,狂感谢,现在只能算10!,谁能帮我把和求
#include<stdio.h>voidmain(){intn,m;for(n=1,m=1;n<=10;n++){m=n*m;printf("%d\n",m);}}...
#include <stdio.h>
void main()
{int n,m;
for(n=1,m=1;n<=10;n++)
{m=n*m;
printf("%d\n",m);
}
} 展开
void main()
{int n,m;
for(n=1,m=1;n<=10;n++)
{m=n*m;
printf("%d\n",m);
}
} 展开
7个回答
展开全部
替换main函数的内容为如下就可以了。最小限度的修改你的程序,同样速度还挺快。根本不用两个for。
int n,m,sum;
for(n=1,m=1,sum=0;n<=10;n++)
{
m*=n;
sum += m;
}
printf("%d\n",sum);
int n,m,sum;
for(n=1,m=1,sum=0;n<=10;n++)
{
m*=n;
sum += m;
}
printf("%d\n",sum);
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写个函数计算N!
//n不能太大,注意int的取值范围
int foo(int n)
{
int i,m=1;
for(i=0;i<n;i++) m *= n;
return m;
}
void main()
{
int i,sum=0;
for(i=1;i<=10;i++) sum += foo(i);
printf("1! + 2! + ... + 10! = %d\n", sum);
}
//n不能太大,注意int的取值范围
int foo(int n)
{
int i,m=1;
for(i=0;i<n;i++) m *= n;
return m;
}
void main()
{
int i,sum=0;
for(i=1;i<=10;i++) sum += foo(i);
printf("1! + 2! + ... + 10! = %d\n", sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个程序只要加一句和加一个变量就可以
#include <stdio.h>
void main()
{
int n,m=1,s=0;
for(n=1;n<=10;n++)
{
m=n*m; //m就是n的阶乘,不需要新的循环,也不需要子函数来求
s+=m; //这个就是实现+的运算
}
printf("%d\n",m);
}
#include <stdio.h>
void main()
{
int n,m=1,s=0;
for(n=1;n<=10;n++)
{
m=n*m; //m就是n的阶乘,不需要新的循环,也不需要子函数来求
s+=m; //这个就是实现+的运算
}
printf("%d\n",m);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你们不觉得应该是两个for嵌套才能实现吗?
for(n=1;n<=10;n++)//大数阶乘需要另想办法
{
//j计算n的阶乘加到s
tmp = 0;//tmp保存临时的阶乘计算结果
for(m = n;m>1/*1没必要计算*/;m--)
{
tmp*=m;
}
s+=tmp;
}
for(n=1;n<=10;n++)//大数阶乘需要另想办法
{
//j计算n的阶乘加到s
tmp = 0;//tmp保存临时的阶乘计算结果
for(m = n;m>1/*1没必要计算*/;m--)
{
tmp*=m;
}
s+=tmp;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
void main()
{
int n,m,i,sum=0;
for(n=1;n<=10;n++)
{
m=1;
for(i=1;i<=n;i++) m *=i;
sum+=m;
}
printf("%d\n",sum);
}
void main()
{
int n,m,i,sum=0;
for(n=1;n<=10;n++)
{
m=1;
for(i=1;i<=n;i++) m *=i;
sum+=m;
}
printf("%d\n",sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-11-02
展开全部
在main函数里面写:
int n,m,i;
int sum=0;
for(n=1,m=1;n<=10;n++)
{
for(i=1;i<=n,i--)
{
m=n*m;
}
sum=sum+m;
}
printf("%d\n",m);
int n,m,i;
int sum=0;
for(n=1,m=1;n<=10;n++)
{
for(i=1;i<=n,i--)
{
m=n*m;
}
sum=sum+m;
}
printf("%d\n",m);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询