C语言经典100题之循环嵌套
1,有 1、2、3、4 四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
思路分析:首先来分析这道题目,三位数,无非就是i,j,k的三种不同组合,互不相同翻译成C语言就是i!=j, i!=k,j!=k。无重复我们可以使用枚举法枚举所有的三位数,然后判断是否满足互不相同的条件即可,利用三重循环,从百位,十位以及个位开始列举。
代码:
# include "stdio.h" int main() { int i,j,k, count = 0; for(i=1;i<=4;i++) { for(j=1;j<=4;j++) { for(k=1;k<=4;k++) { if(i!=j && i!=k && k!=j) { printf("%d%d%d\n",i,j,k); count++; } } } } printf("一共有%d个满足条件的三位数",count); return 0; }