算法--排列組合

/*
** 關於排列的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] );

}
}

發佈了33 篇原創文章 · 獲贊 11 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章