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