c语言 输入n,0<n<7,输出用n,n+1,n+2,n+3这四个数组成的无重复数字的三位数。 10
2个回答
展开全部
最笨的方法是用穷举呀
#include <stdio.h>
int main()
{
int n;
int i, j, k;
printf("请输入n");
scanf("%d", &n);
for (i = n; i <= n + 3; i++)
{
for (j = n; j <= n + 3; j++)
{
for (k = n; k <= n + 3; k++)
{
if (i == j || i == k || j == k)
continue;
printf("%d%d%d\n", i, j, k);
}
}
}
return 0;
}
展开全部
#include <stdio.h>
const int m{3};
int n = 0;
int num[m] = {0};
void DFS(int x);
int main(void)
{
printf("请输入n:");
scanf("%d", &n);
DFS(0);
return 0;
}
void DFS(int x)
{
if(x == m)
{
for(int i = 0; i < m; ++i)
printf("%d", num[i]);
printf("\n");
}
else
{
for(int i = n; i <= n + 3; ++i)
{
bool judge{true};
for(int j = 0; j < x; ++j)
if(num[j] == i)
{
judge = false;
break;
}
if(judge)
{
num[x] = i;
DFS(x + 1);
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询