1. 程式人生 > >1004: C語言考試練習題_排列

1004: C語言考試練習題_排列

題目

Description
有四個互不相同的數字,輸出由其中三個不重複數字組成的排列
Input
4個整數。
Output
所有排列。
Sanmple Input
1 2 3 4
Sample Output
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

程式碼塊

程式碼塊語法遵循標準markdown程式碼,例如:

import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);
        int[] a = new int[4];
        for (int i = 0; i < 4; i++)
            a[i] = cin.nextInt();
        Arrays.sort(a); //
        for
(int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) for (int k = 0; k < 3; k++) if (i != j && j != k && k != i) System.out.printf("%d %d %d\n", a[i], a[j], a[k]); int t1 = a[0], t2 = a[1], t3 = a[2], t4
= a[3]; a[2] = a[3]; for (int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) for (int k = 0; k < 3; k++) if (i != j && j != k && k != i) System.out.printf("%d %d %d\n", a[i], a[j], a[k]); a[2] = t3; a[1] = a[2]; a[2] = a[3]; for (int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) for (int k = 0; k < 3; k++) if (i != j && j != k && k != i) System.out.printf("%d %d %d\n", a[i], a[j], a[k]); a[1] = t2; a[2] = t3; a[0] = a[1]; a[1] = a[2]; a[2] = a[3]; for (int i = 0; i < 3; i++) for (int j = 0; j < 3; j++) for (int k = 0; k < 3; k++) if (i != j && j != k && k != i) System.out.printf("%d %d %d\n", a[i], a[j], a[k]); } }