1. 怎么写vb的阶乘代码
1、For语句实现
Private Sub Command1_Click()
Dim s As Long, n As Integer, i As Integer
n = Val(Text1.Text)
s = 1
For i = 1 To n
s = s * i
Next i
Label4.Caption = Str(s)
End Sub
2、Do While语句实现
Private Sub Command1_Click()
Dim s As Long, n As Integer, i As Integer
n = Val(Text1.Text)
s = 1
i = 1
Do While i <= n
s = s * i
i = i + 1
Loop
Label4.Caption = Str(s)
End Sub
扩展资料:
1~10的阶乘的结果如下:
1!=1
2!=2*1=2
3!=3*2*1=6
4!=4*3*2*1=24
5!=5*4*3*2*1=120
6!=6*5*4*3*2*1=720
7!=7*6*5*4*3*2*1=5040
8!=8*7*6*5*4*3*2*1=40320
9!=9*8*7*6*5*4*3*2*1=362880
10!=10*9*8*7*6*5*4*3*2*1=3628800
2. 1到100的阶乘代码
给你100!#include //求n!方法如下: private int calculateN(int n) { if(n==1) { return 1; } else if(n>=2) { return calculateN(n-1)*n; } } //求1!+2!+…..+(n-1)!+n!方法如下: private int calculate1ToN(int n) { int iSum; If(n>0) { for(int i=0;i<n;i++) { iSum+= calculateN(i); } } reutrn iSum; } #include <stdio.h> #include <conio.h> int main(void) { int n,i; int sum=1; printf("请输入n:"); scanf("%d",&n); for(i=1;i<=n;i++) { sum=sum*i; } printf("n!=%d\n",sum); getch(); return 0; } 给你100! #include<stdlib.h> #include<iostream.h> #include<iomanip.h> const int N=100; int compute(unsigned int *s,int n)//s用来存储一次的计算结果,n为本次计算的乘数,函数返回结果中有效数据的节数 { unsigned long p; //暂时存放一节的结果 unsigned long more=0;//一次乘法的进位 int i; //循环变量 static int m=1;//存放结果中的节数,三位一节 static int q=0;//存放结果中最后为零的节数 //计算本次的结果 for(i=q;i<m;i++) { p=(long)s[i]*(long)n+more; more=p/N; s[i]=p-more*N; } //计算结果中最后为零的节数 while(s[q]==0) q++; //处理最高位 for(more=p/N;more;) { p=more; more=p/N; s[i++]=p-more*N; m++; //有效节数增一 } return m; //返回有效节数 } void main() { unsigned int *s; //存放结果 int i; //循环变量 int m; //存放节数 int n; //求n的阶乘 cout<<;"请输入一个正整数<0----100>:"; cin>>n; if(n<0) { cout<<;"输入数据错误!"<<endl; return; } else if(n==0) { cout<<"0!==1"<<endl; return; } //初始化s s=(unsigned int *)malloc(n*sizeof(s)*10); for(i=1;i<n;i++) s[i]=0; s[0]=1; //计算结果 for(i=2;i<=n;i++) m=compute(s,i); while(s[m]==0) m--;//过滤掉前面的零 //输出结果 cout<<n<<"!=="<<s[m--];//最高一节 int num=1; for(i=m;i>=0;i--) { num++; cout<<','<<setw(3)<<setfill('0')<<s[i]; if((num%10)==0) cout<<endl; } cout<<endl; //释放空间 free(s); } JAVA的函数是一样的.可惜JAVA的编码我不会写了. 给你100! #include #include #include const int N=100; int compute(unsigned int *s,int n)//s用来存储一次的计算结果,n为本次计算的乘数,函数返回结果中有效数据的节数 { unsigned long p; //暂时存放一节的结果 unsigned long more=0;//一次乘法的进位 int i; //循环变量 static int m=1;//存放结果中的节数,三位一节 static int q=0;//存放结果中最后为零的节数 //计算本次的结果 for(i=q;i{ p=(long)s[i]*(long)n+more; more=p/N; s[i]=p-more*N; } //计算结果中最后为零的节数 while(s[q]==0) q++; //处理最高位 for(more=p/N;more;) { p=more; more=p/N; s[i++]=p-more*N; m++; //有效节数增一 } return m; //返回有效节数 } void main() { unsigned int *s; //存放结果 int i; //循环变量 int m; //存放节数 int n; //求n的阶乘 cout:"; cin>>n; if(n{ coutreturn; } else if(n==0) { coutreturn; } //初始化s s=(unsigned int *)malloc(n*sizeof(s)*10); for(i=1;is[0]=1; //计算结果 for(i=2;im=compute(s,i); while(s[m]==0) m--;//过滤掉前面的零 //输出结果 cout int num=1; for(i=m;i>=0;i--) { num++; coutif((num%10)==0) cout} cout //释放空间 free(s); } JAVA的函数是一样的.可惜JAVA的编码我不会写了. using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace test{ class Program { public static int jiecheng(int n) { if (n == 1) return 1; else return n * jiecheng(n - 1); } static void Main(string[] args) { Console.WriteLine("请输入整数n"); int n=int.Parse(Console.ReadLine()); int sum=0; for(int i=1;i<=n;i++) sum+=jiecheng(i); Console.WriteLine("结果="+sum); Console.ReadLine(); } }}。3. C#中求阶乘的和代码怎么写
4. 怎样用循环语句写n的阶乘这个代码
5. 1到100的阶乘代码
6. 1到100的阶乘代码
7. C#中求阶乘的和代码怎么写