C语言生成三位数排列组合:使用嵌套if语句代替循环
#include <stdio.h> int main() { int a,b,c; printf('请输入三个不同的数字:'); scanf('%d %d %d', &a, &b, &c); if (a == b || a == c || b == c){ printf('输入的数字有相同的数 \n'); return 0; } printf ('由这三个数字组成的三位数如下: \n'); if (a < b && a < c){ printf ('%d%d%d\n', a, b, c); if (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, b, a); printf ('%d%d%d\n', c, a, b); } else { printf ('%d%d%d\n', a, b, c); printf ('%d%d%d\n', a, c, b); printf ('%d%d%d\n', c, a, b); printf ('%d%d%d\n', c, b, a); printf ('%d%d%d\n', b, c, a); printf ('%d%d%d\n', b, a, c); } } else if (b < a && b < c){ printf ('%d%d%d\n', b, a, c); if (a < c){ printf ('%d%d%d\n', b, c, a); printf ('%d%d%d\n', a, b, c); printf ('%d%d%d\n', a, c, b); printf ('%d%d%d\n', c, a, b); printf ('%d%d%d\n', c, b, a); } else { printf ('%d%d%d\n', b, a, c); printf ('%d%d%d\n', b, c, a); printf ('%d%d%d\n', c, b, a); printf ('%d%d%d\n', c, a, b); printf ('%d%d%d\n', a, c, b); printf ('%d%d%d\n', a, b, c); } } else { printf ('%d%d%d\n', c, a, b); if (a < b){ printf ('%d%d%d\n', c, b, a); printf ('%d%d%d\n', a, c, b); printf ('%d%d%d\n', a, b, c); printf ('%d%d%d\n', b, a, c); printf ('%d%d%d\n', b, c, a); } else { printf ('%d%d%d\n', c, a, b); printf ('%d%d%d\n', c, b, a); printf ('%d%d%d\n', b, c, a); printf ('%d%d%d\n', b, a, c); printf ('%d%d%d\n', a, b, c); printf ('%d%d%d\n', a, c, b); } } return 0; }
原文地址: https://www.cveoy.top/t/topic/oJZW 著作权归作者所有。请勿转载和采集!