题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
分析:在百、十、个位用for循环嵌套遍历1、2、3、4这个数,在嵌套循环内利用if语句判断去除百、十、个位有重复的数据
代码如下:
#include<stdio.h>
void main()
{
int i,j,k,n=0;
printf("有1、2、3、4个数字,/n能组成多少个互不相同/n且无重复数字的三位数?/n都是多少?/n/n");
for(i=1;i<5;i++)
for(j=1;j<5;j++)
for(k=1;k<5;k++) /*三层循环分别让 i,j,k 遍历 1,2,3,4 这四个数*/
{
if((i!=j)&&(i!=k)&&(j!=k)) /*用逻辑运算符*/
{
printf("%d, ",i*100+j*10+k);
//printf("%d%d%d, ",i,j,k);/*从效率来讲这条代码会更好*/