算法--排列组合

来源:互联网 发布:iphone7连接电脑软件 编辑:程序博客网 时间:2024/06/03 03:45
/*
** 关于排列的C语言实现
**
*/




#include<stdio.h>
void main( void )
{
int data[5] = {1, 4, 9, -8, 24};


//选择两个数
int i, j, k;
int count = 1;


for ( i = 0; i < 5; i ++ ) 
for ( j = 0; j < 5; j ++ ) {
if ( i != j ) {
printf( "第%d种组合:%-4d,%-4d\n",count++, data[i], data[j] );
}

}


count = 1;
//选择三个数
for ( i = 0; i < 5; i ++ )
for ( j = 0; j < 5; j ++ ) 
for ( k = 0; k < 5; k++ ) {
if ( (i != j) && (i != k) && (j != k) ) {
printf( "第%d种组合:%-4d,%-4d,%-4d\n",count++, data[i], data[j], data[k] );
}

}

}



/*
** 关于组合的C语言实现
**
*/


**********************************************************************************************************************

#include<stdio.h>
void main( void )
{
int data[5] = {1, 4, 9, -8, 24};


//选择两个数
int i, j, k;
int count = 1;


for ( i = 0; i < 5 - 1; i ++ ) 
for ( j = i+1; j < 5; j ++ ) {
printf( "第%d种组合:%-4d,%-4d\n",count++, data[i], data[j] );

}


//选择三个数
// i= 0; 5-2
for ( i = 0; i < 5 - 2; i ++ )
// j = i+1; 5-1
for ( j = i+1; j < 5 - 1; j ++ ) 
// k = j+1; 5 - 3;没有执行
for ( k = j + 1; k < 5 - 3; k++ ) {
printf( "第%d种组合:%-4d,%-4d,%-4d\n",count++, data[i], data[j], data[k] );

}
}

0 0
原创粉丝点击