⑴ 【在線等】c語言程序:對n的階乘求和,n=1到10
分析下程序,階乘可以用遞歸做,也可以用循環做,這里就放上這兩種代碼了。版
一.遞歸:
#include <stdio.h>
int f(int t)
{
if (t==1)
return 1;
else
return t*f(t-1);
}
int main()
{
printf("%d ",f(10));
return 0;
}
程序分權析:定義一個f函數,利用遞歸的特性,進行運算
10*f(9) = 10*9*f(8) …… 直到到1時返回1
得出結果:
⑵ 怎樣用C語言計算1到10的階層的和
C語言中實現階來乘的計算可自以採用遞歸或者循環,通常循環用的比較多,循環可以採用while循環和for循環等。
下面以for循環為例實現1-10的階乘的和的計算,代碼如下:
int i,sum=1,S=0;
for(i=1;i<=10;i++)
{
sum=sum*i;
S=S+sum;
}
上述的變數S在運行結束後的結果值即為1-10的階乘的和。
(2)十以內的階乘求和如何編程擴展閱讀:
數學函數
所在函數庫為math.h、stdio.h、string.h、float.h
int abs(int i) 返回整型參數i的絕對值
double atof(char *nptr) 將字元串nptr轉換成浮點數並返回這個浮點數
double atoi(char *nptr) 將字元串nptr轉換成整數並返回這個整數
double atol(char *nptr) 將字元串nptr轉換成長整數並返回這個整數
char *ecvt(double value,int ndigit,int *decpt,int *sign),將浮點數value轉換成字元串並返回該字元串
⑶ c++語言中1到10階乘求和
//代碼如下
#include<iostream>
using namespace std;
int main()
{
long sum = 0;
long n = 1;
int i;
for(i = 1; i <= 10; i++)
{
n = n*i;
sum += n;
}
cout <<姿緩 "1到10階乘之和為跡運模悄塵: " << sum << endl;
return 0;
}
⑷ java里1到10的階乘相加編程怎麼做
java里1到的階乘相加編程方法如下:
public class Factorial{ //類
public static void main(String [] args){ //主方法
int a=1; //定義一個變數a
int sum=0; //定義一個變數sum,把和存放在sum里
for(int i=1;i<11;i++){ //做1-11循環
a=1; //每次a都從1開始
for(int j=1;j<=i;j++){ //求每個數的階乘
a=a*j;
}
sum=a+sum; //每個數的階乘求好後都加入sum
}
System.out.println(sum); //輸出和sum
}
}
Java是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
⑸ 用C語言編一個1到十的階乘和的程序
很簡單 你看看 如果那復不懂繼續問(制求採納!~~)
1.程序分析:算出1~10的每一個階乘 在求和!
2.程序源代碼:
#include "stdio.h"
#include "conio.h"
main()
{
long i,sum=0,t=1;/*定義三個變數*/
for(i=1;i<=10;i++) /*設置循環幾次 也就是求幾次階乘的和*/
{
t=t*i; /*求i的階乘*/
sum=sum+t; /*求階乘的和*/
}
printf("1+2!+3!...+10!=%ld\n",sum); /*輸出結果*/
getch();/*列印*/
}
⑹ 用c語言for循環求1到10階乘
void
main()
主函數
{
int
i,a=1;
定義整形變數i,a(a初值為1)
int
sum
=0;
定義整形變數sum
初值為0
for(i
=
1;i<=10;i++)
設i的值為1,當i小於等於10成立時跳出答案,不成立,i的數值加1
{
a
=
a
*i;
a=a乘以i
sum
=
sum
+
a;
sum記錄求和
}
printf("1到10的階乘和是
%d",sum);
輸出結果
end
結束
}