Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #define m 5
- int n[m] = {1, 2, 3, 4, 5};
- int a[m] = {0, 1, 2, 3, 4};
- int order(int j)
- {
- int i, k, x, y, s;
- for(i = j;i < m;i ++)
- {
- if(j == m - 1)
- {
- for(s = 0;s < m;s++)
- printf("%d ",n[a[s]]);
- printf("\n");
- return 0;
- }
- x = a[i];
- for (k = i;k > j;k --)
- a[k] = a[k - 1];
- a[j] = x;
- order(j + 1);
- y = a[j]; //recover the order
- for (k = j;k < i;k ++) //if well it maybe can do it like this
- a[k] = a[k + 1];
- a[i] = y; ...
- }
- return 0;
- }
- void main()
- {
- order(0);
- }
Add Comment
Please, Sign In to add comment