Function c(ByVal m As Integer) As Long
If m = 0 Then
c = 1 ' Return 1 不是用这个返回, 直接赋值
Else
c = m c(m - 1) 'Return m c(m - 1) '同上
End If
End Function
Private Sub Button1_Click(ByVal sender As SystemObject, ByVal e As SystemEventArgs) Handles Button1Click
Dim N As Integer , M As Integer , a As Integer, b As Integer
Dim x1 as long , x2 as long , x3 as long
N =val (TextBox1Text) 'N = TextBox1Text
M = val(TextBox2Text ) 'M = TextBox2Text
If N > M Then
a = N - M
x1 = c(N)
x2 = c(M)
x3 = c(a)
b = x1 / (x2 x3)
TextBox3Text = b
End If
End Sub
void main(){
int n,r;
scanf(n,r);
int c=con(n,r);
static int a[c+1][r+1];
f(n,r);
int i,j;
for(i=1;i<=c;i++){
for(j=1;j<=r;j++){
printf(a[i][j]);
printf(’/t’);
}
printf(’/n’);
}
}
int con(int x,int y){
int m=1;int p=1;int q=1;
int i,co;
for(i=1;i<=x;i++)
m=i;
for(i=1;i<=y;i++)
p=1;
for(i=1;i<=x-y;i++)
q=i;
co=m/(pq);
return co;
}//求组合数
int f(int s,int z){
int i,j,k;
int x=0;
int y;
j=1;k=0;int t;int p;
for(y=x+1;y<=s-z+1;y++){
p=k+con(s-y,z-y);
for(t=p;t<=p+k;j++)
a[t][j]=y;
if(j<=z){
j++;
f(x+1);
}
}
return a[t][j];
}
以上就是关于用VB编一求阶乘的函数f(n),主调程序求组合数的程序,分别调用f(n),用来计算组合数的值全部的内容,包括:用VB编一求阶乘的函数f(n),主调程序求组合数的程序,分别调用f(n),用来计算组合数的值、跪求用递归思想编一函数求组合数的程序。(用C哦。)比如在1,2,3,4,5中输出3个数的所有排列!、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)