在C语言中10的阶层怎么编程啦 快

如题所述

1 求阶乘常见的有两种方法

    (1)使用递归

    (2)使用循环

2 代码如下

#include<stdio.h>

//(1)使用递归
int method1(int n){
if (n == 1 || n == 0)
return 1;
else
return n*method1(n - 1);
}

//(2)使用循环
int method2(int n){
if (n == 0)
return 1;
int result = 1;
for (int i = 2; i <= n; i++){
result *= i;
}
return result;
}

int main(){
int n = 10; //n为非负整数
printf("方法(1): %d! = %d\n", n, method1(n));
printf("方法(2): %d! = %d\n", n, method2(n));
getchar();
return 0;
}

3 运行结果

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-05-19
#include<stdio.h>
void main()
{
long n=1;
for(int i=1;i<=10;i++)n*=i;
printf("1到10的阶乘为%ld\n",n);
}
或者用函数这样
#include <stdio.h>
int fun(int n);
void main()
{
int n,sum=0;
printf("请输入n:");//输入数字,如10,不过不能太大,会溢出的
scanf("%d",&n);
printf("1到10的阶乘为: %ld\n",fun(n));

}
int fun(int n)//计算阶乘
{
if(n==1)
return 1;
return n*fun(n-1);
}
第2个回答  2009-05-19
#include<stdio.h>
main()
{
int a=1;
while(a<=10)
a=a*(a+1);
printf("10!=%d",a);
}
第3个回答  推荐于2016-09-28
#include <stdio.h>
main ()
{
unsigned long long int sum=1;
char i;
for (i=1;i<=10;i++)
sum*=i;
printf ("%ld",sum);
return 0;
}本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网