用到递归
用c++编写一个求排列数的程序
答案:2 悬赏:10 手机版
解决时间 2021-06-09 07:31
- 提问者网友:疯孩纸
- 2021-06-08 12:25
最佳答案
- 五星知识达人网友:梦中风几里
- 2021-06-08 13:42
//求排列数
#include<iostream>
using namespace std;
void main()
{
int n,m,i,sum1=1,sum2=1;
cout<<"请输入A(n,m)中的(n m):";
cin>>n>>m;
for(i=1;i<=n;i++)
sum1*=i;
for(i=1;i<(n-m);i++)
sum2*=i;
cout<<"排列数A(n,m)="<<(sum1/sum2)<<endl;
}
结果:
全部回答
- 1楼网友:梦中风几里
- 2021-06-08 14:27
#include <iostream>
using namespace std;
void per( int* a, int i, int n )
{
if ( i == n ) {
for ( int k = 0; k < n; ++k )
cout << a[k] << ' ';
cout.put( '\n' );
} else {
for ( int k = i; k < n; ++k ) {
swap( a[k], a[i] );
per( a, i+1, n );
swap( a[k], a[i] );
}
}
}
int main()
{
int a[] = { 1,2,3,4 };
per( a, 0, 4 );
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯