C语言实验——排列

C语言实验——排列

时间: 1ms        内存:64M

描述:

有4个互不相同的数字,输出由其中三个不重复数字组成的排列。

输入:

4个整数。

输出:

所有排列。

示例输入:

1 2 3 4

示例输出:

1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1
1 2 4
1 4 2
2 1 4
2 4 1
4 1 2
4 2 1
1 3 4
1 4 3
3 1 4
3 4 1
4 1 3
4 3 1
2 3 4
2 4 3
3 2 4
3 4 2
4 2 3
4 3 2


提示:

参考答案(内存最优[752]):

#include "stdio.h"
 main()
{
 int a,b,c,d;

 scanf("%d %d %d %d",&a,&b,&c,&d);
 printf("%d %d %d\n",a,b,c);
 printf("%d %d %d\n",a,c,b);
 printf("%d %d %d\n",b,a,c);
 printf("%d %d %d\n",b,c,a);
 printf("%d %d %d\n",c,a,b);
 printf("%d %d %d\n",c,b,a);
 printf("%d %d %d\n",a,b,d);
 printf("%d %d %d\n",a,d,b);
 printf("%d %d %d\n",b,a,d);
 printf("%d %d %d\n",b,d,a);
 printf("%d %d %d\n",d,a,b);
 printf("%d %d %d\n",d,b,a);
 printf("%d %d %d\n",a,c,d);
 printf("%d %d %d\n",a,d,c);
 printf("%d %d %d\n",c,a,d);
 printf("%d %d %d\n",c,d,a);
 printf("%d %d %d\n",d,a,c);
 printf("%d %d %d\n",d,c,a);
 printf("%d %d %d\n",b,c,d);
 printf("%d %d %d\n",b,d,c);
 printf("%d %d %d\n",c,b,d);
 printf("%d %d %d\n",c,d,b);
 printf("%d %d %d\n",d,b,c);
 printf("%d %d %d\n",d,c,b);


 }

参考答案(时间最优[0]):

#include "stdio.h"
 main()
{
 int a,b,c,d;

 scanf("%d %d %d %d",&a,&b,&c,&d);
 printf("%d %d %d\n",a,b,c);
 printf("%d %d %d\n",a,c,b);
 printf("%d %d %d\n",b,a,c);
 printf("%d %d %d\n",b,c,a);
 printf("%d %d %d\n",c,a,b);
 printf("%d %d %d\n",c,b,a);
 printf("%d %d %d\n",a,b,d);
 printf("%d %d %d\n",a,d,b);
 printf("%d %d %d\n",b,a,d);
 printf("%d %d %d\n",b,d,a);
 printf("%d %d %d\n",d,a,b);
 printf("%d %d %d\n",d,b,a);
 printf("%d %d %d\n",a,c,d);
 printf("%d %d %d\n",a,d,c);
 printf("%d %d %d\n",c,a,d);
 printf("%d %d %d\n",c,d,a);
 printf("%d %d %d\n",d,a,c);
 printf("%d %d %d\n",d,c,a);
 printf("%d %d %d\n",b,c,d);
 printf("%d %d %d\n",b,d,c);
 printf("%d %d %d\n",c,b,d);
 printf("%d %d %d\n",c,d,b);
 printf("%d %d %d\n",d,b,c);
 printf("%d %d %d\n",d,c,b);


 }

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注