/*给定不超过6的正整数A,考虑从A开始的连续4个数字, 请输出所有由他们组成的无重复数字的 三位数。
要求:从小到大,每行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,i,min,mid,max;
printf("输入一个不超过6的正整数:");
scanf("%d",&A);
min=A+1;
mid=A+2;
max=A+3;
for(i=0;i<=3;i++){
switch(i)
{
case 0:
break;
case 1:
min-=1;
break;
case 2:
mid-=1;
break;
case 3:
max-=1;
break;
}
printf("%d%d%d ",A,min,mid);
printf("%d%d%d ",A,min,max);
printf("%d%d%d ",A,mid,min);
printf("%d%d%d ",A,mid,max);
printf("%d%d%d ",A,max,min);
printf("%d%d%d\n",A,max,mid);
A++;
}
return 0;
}
———————————————————————————————————————————————————————————————————————————————————————————— //老师代码
#include <stdio.h>
int main()
{
int a,i,j,k,cnt=0;
scanf("%d",&a);
i=a;
while(i<=a+3){
j=a;
while(j<=a+3){
k=a;
while(k<=a+3){
if(i!=j && i!=k && j!=k)
{
cnt++;
printf("%d%d%d",i,j,k);
if(cnt%6==0){ //6个一行,且末尾不留空格
printf("\n");
}else{
printf(" ");
}
}
k++;
}
j++;
}
i++;
}
return 0;
}