解题思路:使用全排列函数next_permutation()可以很容易实现。把输入的数据先拆分成每一位保存到数组中,然后排序,再使用全排列函数next_permutation()输出即可。
参考代码:
#include<bits/stdc++.h> #define N 9 using namespace std; int main() { int n,i=0,k; int a[N]; scanf("%d",&n); while(n!=0) { a[i++]=n%10; n=n/10; } k=i; sort(a,a+k); do { for(i=0;i<k;i++) printf("%d",a[i]); printf("\n"); }while(next_permutation(a,a+k)); return 0; }
0.0分
4 人评分
汽水瓶 (C语言代码)浏览:597 |
C语言训练-自由落体问题 (C语言代码)浏览:1733 |
C语言程序设计教程(第三版)课后习题1.5 (C++代码)浏览:756 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:748 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:464 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:586 |
1025题解浏览:734 |
C二级辅导-求偶数和 (C语言代码)浏览:671 |
字符串比较 (C语言代码)浏览:680 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:663 |