rprt.net
当前位置:首页 >> 函数调用实现n的阶乘 >>

函数调用实现n的阶乘

#include<stdio.h> long fac(int n) {long f=1,i; for(i=2;i<=n;i++)f*=i; return f; } int main() { int n; scanf("%d",&n); printf("%d!=%ld\n",n,fac(n)); return 0; }

#include int factorial(int n) { if (n return 1; return n * factorial(n-1); } int main() { int sum = 0, i; for (i = 1; i sum += factorial(i); printf("%d\n", sum); return 0; }

#include <stdio.h> int mul(int n) { int i=1,s=1; while(i<=n) s*=i++; return s; } void main() { int i; float s; for(i=1;i<9;i++) s += 1.0 / mul(i); printf("1/1!+1/2!+1/8! = %f\n",s); }

//因C语言数据类型限制,不能做大数的阶乘运算//n的值超过22结果会不准确#include <stdio.h> double jc( int n ) { int i; double rs=1 ; for( i=1;i<=n;i++ ) rs *= i ; return rs ; } int main() { int n; printf("input n:"); scanf("%d" , &n ); printf("%d!=%.0lf\n" , n, jc(n) ); return 0; }

递归,就是利用本身的程序,传入不同的参数,循环执行.

#include int func(int n) { int s=1; for(int i=1;i s*=i; } return s; } int main() { for(int i=1;i printf("%d!=%d\n",func(i)); } return 0; }没有调试,应该没问题

1、打开VC6.0软件,新建一个C语言的项目:2、接下来编写主程序,首先定义用来求阶乘的递归函数以及主函数.在main函数里定义变量sum求和,调用递归函数fact(),并将返回值赋予sum,最后使用printf打印sum的结果,主程序就编写完了:3、最后运行程序,观察输出的结果.以上就是C语言使用递归求阶乘的写法:

计算公式为: n!= n*(n-1)*…*3*2*1,且0!=1 在子函数中只需一个数据x,故设一个参数n 计算结果要返回主函数,故设一个变量result n的阶乘可在一重循环中实现 函数 fac()计算阶乘n! int fac(int n) { int result = 1; if(n1) { result *= n; n--; } return result; }

求n的阶乘的和的c语言程序 main() { int s=0,a=1,i; for(i=1;i<=10;i++) { a=a*i; s+=a; }…

#include int main(void) { int jc(int n); int k; printf("请输入n的阶乘:"); scanf("%d",&k); printf("%d",jc(k)); return 0; } int jc(int n) { int i; int t =1; for(i = n; i>0; i--) { t= t*i; } return t; }

mdsk.net | snrg.net | alloyfurniture.com | xcxd.net | alloyfurniture.com | 网站首页 | 网站地图
All rights reserved Powered by www.rprt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com