【程序
1
】
题目:有
1
、
2
、
3
、
4
个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.
程序分析:可填在百位、十位、个位的数字都是
1
、
2
、
3
、
4
。组成所有的排列后再去
掉不满足条件的排列
#include<stdio.h>
//有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
int main() {
int ge = 0;//声明定义个位上的数字
int shi = 0;//声明定义十位上的数字
int bai = 0;//声明定义百位上的数字
int sum = 0;//声明定义三位数字
int count = 0;//声明定义有多少个数字
printf("能组成不同的三位数字:");
//下面是三次嵌套循环
for(ge=1;ge<5;ge++){
for (shi = 1; shi < 5; shi++) {
for (bai = 1; bai < 5; bai++) {
sum = bai * 100 + shi * 10 + ge;//求出三位数字
if (ge != shi && shi != bai && bai != ge)//题目要求限制打印出的条件
{
printf("%3d ", sum);
count++;
}
}
}
}
printf("\n");
printf("共组成了%d个不同的三位数\n", count);//count=24
return 0;