C语言循环经典题:
有1,2,3,4这四个数字,能组成多少个互不相同,并且没有重复的三位数?都是多少?
分析:既然要组成三位数,我们这里就需要使用三层循环的嵌套,然后按照个十百位输出。这里的时间复杂度为O(n^3)
代码如下:
#include<stdio.h>
int main()
{
int i = 0;//百位
int j = 0;//十位
int k = 0;//个位
int count = 0;//计数器
for (i = 1; i < 5; i++)
{
for (j = 1; j < 5; j++)
{
for (k = 1; k < 5; k++)
{
if ((i != j) && (i != k) && (j != k))//判断不相等
{
count++;
printf("不同的数为:%d%d%d\n", i, j, k);
}
}
}
}
printf("总共有%d个:\n", count);
return 0;
}
运行结果: