/*
Name: C语言经典算法100例001
Copyright: *
Author: 巧若拙
Date: 24-08-14 14:31
Description:
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
*/
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#define MAX 4
void fun1(void);
void fun2(void);
int main(void)
{
fun1();
fun2();
system("pause");
return 0;
}
void fun1(void)
{
int lib[MAX] = {1,2,3,4};
int i, j, k;
int count = 0;
for (i=0; i<MAX; i++)
{
for (j=0; j<MAX; j++)
{
if (j != i)
{
for (k=0; k<MAX; k++)
{
if (k != i && k != j)
{
printf("%d %d %d\t", lib[i], lib[j], lib[k]);
count++;
}
}
}
}
}
printf("\n总共有 %d 组数字\n", count);
}
void fun2(void)
{
int i, j, k;
int count = 0;
for (i=1; i<=MAX; i++)
{
for (j=1; j<=MAX; j++)
{
for (k=1; k<=MAX; k++)
{
if (j != i && k != i && k != j)
{
printf("%d %d %d\t", i, j, k);
count++;
}
}
}
}
printf("\n总共有 %d 组数字\n", count);
}