
c语言 求1!+2!+3!+...+n!的值.n由键盘输入
13个回答
展开全部
简单而高效!n的值不能超过13,否则会因为数据溢出而导致结果错误。
#include <stdio.h>
int main()
{
long i,n,m,sum=0;
scanf("%d",&n);
for(i=m=1;i<=n;i++)
{
m*=i;
sum+=m;
}
printf("%d\n",sum);
return 0;
}
#include <stdio.h>
int main()
{
long i,n,m,sum=0;
scanf("%d",&n);
for(i=m=1;i<=n;i++)
{
m*=i;
sum+=m;
}
printf("%d\n",sum);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include "stdio.h"
int calc(int n)
{
if(n == 1)
return 1;
return n + calc(n-1);
}
int fun(int n)
{
int temp = 0;
for(int i=1;i<=n;++i)
{
temp += calc(i);
}
return temp;
}
void main()
{
int n=0;
printf("input n:\n");
scanf("%d",&n);
n = fun(n);
printf("result is :%d",n);
}
int calc(int n)
{
if(n == 1)
return 1;
return n + calc(n-1);
}
int fun(int n)
{
int temp = 0;
for(int i=1;i<=n;++i)
{
temp += calc(i);
}
return temp;
}
void main()
{
int n=0;
printf("input n:\n");
scanf("%d",&n);
n = fun(n);
printf("result is :%d",n);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int i,j,sum;
for(i=1;i<n+1;i++)
{
for(j=1;j<i+1;j++)
sum+=j;
}
sum就是最后要求的值
for(i=1;i<n+1;i++)
{
for(j=1;j<i+1;j++)
sum+=j;
}
sum就是最后要求的值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int func(int n)
{
if(n==1)
return 1;
else
return n*func(n-1);
}
int main()
{
int i,n,sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
sum+=func(i);
printf("%d\n",sum);
return 0;
}
int func(int n)
{
if(n==1)
return 1;
else
return n*func(n-1);
}
int main()
{
int i,n,sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
sum+=func(i);
printf("%d\n",sum);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include "stdio.h"
#include <conio.h>
int main(){
int multi(int a);
int i,sum = 0,num;
printf("Please input a number:");
scanf("%d", &num);
for(i = 0; i < num; i ++){
sum += multi(i+1);
}
printf("Sum is %d", sum);
getch();
return 0;
}
int multi(int a){
if(a < 0){
printf("Unexpected error!");
}else if(1 == a){
return 1;
}else return a*multi(a - 1);
}
#include <conio.h>
int main(){
int multi(int a);
int i,sum = 0,num;
printf("Please input a number:");
scanf("%d", &num);
for(i = 0; i < num; i ++){
sum += multi(i+1);
}
printf("Sum is %d", sum);
getch();
return 0;
}
int multi(int a){
if(a < 0){
printf("Unexpected error!");
}else if(1 == a){
return 1;
}else return a*multi(a - 1);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |