关于排列组合的程序
nwbxd 2009-03-08 11:07:43 我想计算C1100 110 (1100在下面,110在上面),自己编了一个程序如下:
#include<iostream>
using namespace std;
void main()
{
int i,j,h; //i 在下面,j在上面
double m,n;
double k;
m=1;
n=1;
cout <<"请输入i和j:i=";
cin>>i;
h=i;
cout<<"j=";
cin>>j;
if(i>=j)
{
for(;i>h-j;i--)
m=m*i;
for(;j>0;j--)
n=n*j;
}
k=n/m;
cout<<"k="<<k;
}
当数字小的时候结果是正确的,但输入1100和110时,结果是0.我不知道是什么原因。请大家帮我看看。