组合数就是你说的,但是28不是,我的意思是1--35,共35个数字对吧。用C语言编写一个程序,可以从中任选28个数字,这28个数字再次选出5个数字,要求这五个数字的组合能看到。
举例要求的程序效果:
35任选出1,2,3,4,5,.........28
要求输出
1,2,3,4,5
1,2,3,4,6
、
、
、
这样的。谢谢
一看你就是在写作业,哈哈。明白你的意思,
举个简单的例子 1~28 中取 3 个数字
int in[28] = {1,2,3,4,5, 一直到 28} ;
int i = 1 ;
int j = 1 ;
int k = 1 ;
for( i = 1 ; i < 29 ; i ++ )
{
for( j = 1; j < 29 ; j ++ )
{
for( k = 1 ; k < 29 ; k ++ )
{
if( j != i && k != i && j != k )
{
printf( "%d %d %d", in[i], in[j], in[k]);
}
}
}
}
这个是一种正向的实现,你可以费劲的改一下,取3个是3层循环,取5个就是5层循环,而且 if中的判断是一大串。35选28,就随便选吧,直接放到初始in数组中就行。
我觉着用递归可能能更简单的实现,不过现在这个时间真懒得想了。
朋友 我的意思是 随机的选出28个数字,再从28个数字里随机取出5个数字,并输出,谢谢你的帮助