c語言求1到n的階乘和
❶ c語言編程:求1!到n!的和
#include <stdio.h>
int main()
{
int i,s=0,a,l=1;
scanf("%d",&a);
for(i=1;i<=a;i++)
{
l=i*l;
s=s+l;
}
printf("%d\n",s);
return 0;
}
試試~看看是不是你想要的
❷ c語言求1到n的階乘之和s
最基礎的抄思路,是逐個求階襲乘,並累加。不過由於階乘是從1乘到n,所以每個數都單獨求一次階乘,會有很多重復運算,影響效率。
所以更快捷的方式是,在上一個數的階乘基礎上,直接乘上本身,得到當前數的階乘。
以此為主導,代碼如下:
#include <stdio.h>
int main()
{
int n, i, n1 = 1,s=0;
scanf("%d",&n);//輸入n值。
for(i=1; i <= n; i ++)
{
n1*=i;//計算i的階乘。
s+=n1;//累加。
}
printf("%d\n", s);//輸出結果。
}
❸ c語言求1到n的階乘的和
最基礎的思來路,是逐個自求階乘,並累加。不過由於階乘是從1乘到n,所以每個數都單獨求一次階乘,會有很多重復運算,影響效率。
所以更快捷的方式是,在上一個數的階乘基礎上,直接乘上本身,得到當前數的階乘。
以此為主導,代碼如下:
#include <stdio.h>
int main()
{
int n, i, n1 = 1,s=0;
scanf("%d",&n);//輸入n值。
for(i=1; i <= n; i ++)
{
n1*=i;//計算i的階乘。
s+=n1;//累加。
}
printf("%d\n", s);//輸出結果。
}
❹ c語言怎麼求1到n的累加和
思路:先定義一個函數用來計算一個數的階乘,在從1到N循環依次就其累加和,最後輸出累加和即可。
參考代碼:例如求1到3的階乘累加和。
#include"stdio.h"
intfun(intn){
if(n==1)return1;
elsereturnn*fun(n-1);
}
#include"math.h"
intmain(){
intn,sum=0,i;
scanf("%d",&n);
for(i=1;i<=n;i++)
sum+=fun(i);
printf("%d
",sum);
return0;
}
/*
運行結果:
3
9
*/
❺ c語言求1/n的階乘和
#include<stdio.h>
main()
{
int
i,n,
k
=
1
;
/*另設一個值來保存階乘吧,i要用來循環*/
scanf("%d",&n);
for(i=1;i<=n;i++)
/*這里的分號去掉,不然下面專一句沒法屬循環=
=*/
k
*=
i;
printf("%d",k);
getch();
}
望點贊
❻ c語言1加到n的階乘之和
首先fac函數沒有定義返回類型;
還有就是計算階乘和計算的只是n的階乘;
#include<stdio.h>
intfac(intn)//返回類型為int型
{
intsum=0;
intsum1=1;
for(intj=1;j<=n;j++)//從1開始計算階乘,計算到n
{
for(inti=1;i<=j;i++)
{
sum1*=i;
}
sum+=sum1;
}
returnsum;
}
intmain(void)
{
intn1;
intresult;
printf("隨意輸入整數n,求1!+2!+...+n!的和: ");
scanf("%d",&n1);
result=fac(n1);
printf("%d",result);
return0;
}
❼ c語言求1到n的階乘之和s
1、首先打開vc6.0,新建自一個項目。
❽ c語言求1到n階乘的和用遞歸
1、打開vc6.0,新建一個vc項目,添加頭文件,添加一個空的main函數,這里先定義一個用來求階乘的函數,函數的參數為i,階乘就是不斷的和前面的一個數相乘,這里就是不斷和fact函數相乘,之後編寫主函數的內容:
❾ C語言求1~n階乘的和
你那個do
while是要做什麼呢?輸入n為負數則循環輸入???還是????
#include
<stdio.h>
long
Fact(int
n);///////////////////////////////////////////////////////函數定義在專調用之前,要預先聲明
void
main
()
{
int
n,d;
long
b,c;
do
{
printf("請輸入屬一個正整數:");
scanf("%d",&n);
c=0;/////////////////////////////////////////////////////c=0放這邊
for
(d=1;d<=n;d++)
{
b=Fact(d);////////////////////////////////////////Fact(n);改成Fact(d);
c=c+b;
}
printf("和為%ld\n",c);
}while
(n<=0);
}
long
Fact(int
n)
{
int
i;
long
result=1;
for
(i=1;i<=n;i++)
result
*=i;
return
result;
}
❿ c語言:1到n的階乘之和
最基礎的思路,是逐個求階乘,並累加。不過由於階乘是從1乘到n,所以每個數都單獨求一次階乘,會有很多重復運算,影響效率。
所以更快捷的方式是,在上一個數的階乘基礎上,直接乘上本身,得到當前數的階乘。
以此為主導,代碼如下:
#include
<stdio.h>
int
main()
{
int
n,
i,
n1
=
1,s=0;
scanf("%d",&n);//輸入n值。
for(i=1;
i
<=
n;
i
++)
{
n1*=i;//計算i的階乘。
s+=n1;//累加。
}
printf("%d\n",
s);//輸出結果。
}