C语言求N阶乘的方法
来源:互联网 发布:机房网络布线图 编辑:程序博客网 时间:2024/04/29 16:20
1.用for循环:
#include<stdio.h>
main()
{
int n,i,x;
printf ("in put a num : ");
scanf ("%d",&n);
if (n<0) printf ("data error! \n");
if(n=0) printf ("0!" ,1);
else for(i=1;i<=n;i++) x=x*i;
printf ("%d!, %d", n, x);
}
2.用递归实现:
#include<stdio>
void main()
{
int fac (int n);
int n, y;
printf ( "in put an interger num:");
sacnf ("%d",&n);
y=fac (n);
printf ("%d!=%d\n",n,y);
}
int fac ( int n)
{int f ;
if (n<0)
printf ("data error!");
else if(n==1||n==0) f=1;else f=fac(n-1)*n;
return (f);
}
3.用局部变量:
用register变量
# include <stdio.h>
void main ()
{
long fac (long);
long i, n;
scanf ("%1d", &n);
for (i=1; i<=n; i ++)
printf ("%1d!=%1d \n" ,i, fac(i));
}
long fac (long n)
{
register long i,f=1;
for (i=1;i<=n;i++)
f = f*i;
return (f);
}
用static变量
# inlcude <stdio.h>
void main ()
{
int fac (int n);
int i;
int n;
printf ("please in put a num :");
scanf ("%d" ,&n);
if(n<0) printf ("data error! \n");
else if (n==0) printf ("0!,1\n");
else for (i=1;i<=n;i++)
printf ("%1d!=%1d\n" , i , fac(i));
}
int fac (int n) {
static int f=1;
f = f*n;
return (f);
- C语言求N阶乘的方法
- c语言:用递归方法求n的阶乘
- 用递归方法求n的阶乘(C语言)
- 求N的阶乘C语言程序
- c语言递归求n的阶乘
- C语言循环和递归两种方法求n的阶乘
- C语言使用递归求N的阶乘
- c语言中,求1到n的阶乘之和
- 【Ex.】c语言求 n的阶乘以及n的阶乘之和
- C语言:从键盘输入一个数n,求n的阶乘(n!)
- C语言编程:求n的阶乘问题。输入一个正整数n,输出n!
- C语言练习题每练 3:递归 求n! n的阶乘
- 我用C语言实现“ 输入一个整数n,并求该整数n的阶乘”
- C:求n的阶乘和
- 用递归方法求n的阶乘。
- 求n的阶乘
- 求n的阶乘
- 求n的阶乘
- leetcode_50. Pow(x, n)
- Box-sizing属性及解决兼容性的做法
- HDU5979 Convex
- 微信公众号开发---自定义菜单的创建及菜单事件响应(java)
- 由三个数比较引发的感想
- C语言求N阶乘的方法
- redis使用过程中遇到的问题及解决方法
- (笔记)Spring MVC学习指南_基于注解的控制器
- Cubic Projection立方体投影的全景视频编码
- SSL证书和spring boot的配置
- java动态代理(JDK和cglib)
- 操作系统学习日记-进程通讯
- iOS中判断该应用定位开启状态并跳转设置
- MVC中如何在Views目录下存放css,js,html文件的解决方案