循环遍历就行
#include <stdio.h>
int main(void) {
//输出符合条件的数
int a, b, c;
int number = 0;
int count = 0;
for (a = 4; a >=1 ; a--) { //控制百位
for ( b = 4 ; b >=1; b--) { //控制十位
for( c = 4 ; c >=1 ; c--){ //控制个位
number = 100 * a + 10 * b + c;
if (a!=b && a!=c && b!=c ) { //排除重复的数字
printf("%4d",number);
count++;
}
}
}
}
//输出个数
printf("一共有%d个数\n", count);
return 0 ;
}
有帮助望采纳
#include <stdio.h>
int main()
{
int i, j, k;
int count = 0;
printf("\n");
for (i = 4; i >= 1; i--)
for (j = 4; j >= 1; j--)
for (k = 4; k >= 1; k--)
{
if (i != k && i != j && j != k) /*确保i、j、k三位互不相同*/
count++;
printf("%d%d%d\n", i, j, k);
}
printf("count = %d", count);
return 0;
}
你好,同学,无需重复遍历判断,只需要知道大小即可!
#include <stdio.h>
int main()
{
int i, j, k, count;
count = 0;
for(i=4; i>=1; i--)for(j=i-1;j>=1;j--)for(k=j-1;k>=1;k--){
printf("%d%d%d\n",i,j,k);
count++;
}
printf("个数:%d",count);
return 0;
}