给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。
输入格式:
输入在一行中给出a
输出格式:
输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。
输入样例:
2
输出样例:
234 235 243 245 253 254
324 325 342 345 352 354
423 425 432 435 452 453
523 524 532 534 542 543
以下,是我写出的代码,仅为练习,希望有更好的方法留言让我学习,或者有冗杂的地方,希望指正
#include<stdio.h>
int main()
{ int a,t,x,sum,y,p,z,b;
scanf("%d",&a);//2
for(t=a;t<a+4;t++)
{ z=t*100;//设置百位 ,循环在2-5种变化
for(x=a;x<a+4;x++)
{ b=x*10;//设置十位,,,
for(y=a;y<a+4;y++)//设置个位,最里面的循环最先变化
{
if(t!=x&&x!=y&&y!=t)//防止出现222,333,等情况
{ sum=z+b+y;
printf("%d",sum);
p++;
if(p%6==0)
{
p==0;
printf("\n");
}
else
printf(" ");
}
}
}
}
return 0;
}