您的位置:首页 > 编程语言

循环·3·求符合给定条件的整数集

2017-10-19 23:43 162 查看

7-16 求符合给定条件的整数集(15 分)

给定不超过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;

    scanf("%d",&A);

    int i=0,j=0,k=0;

    int cnt=0;

    for(i=A;i<A+4;i++)

    {

        for(j=A;j<A+4;j++)

        {

            if(i==j)

            continue;

            for(k=A;k<A+4;k++)/*i,j,k三重循环定位这个三位数,最终巧妙的构成二十四位不重复数*/

            {

                if(j==k||i==k)

                continue;

                printf("%d%d%d",i,j,k);

                cnt++;

                if(cnt%6==0)

                {

                    printf("\n");

                }

                else

                {

                    printf(" ");

                }

            }

        }

    }

    return 0;

}

 _____________________从另个思路来说,两个循环共四行,每行六位数,这个思路我陷入盲区:——————————————

#include<stdio.h>

int main()

{

  int A,i,j,k=0,count=0;

  scanf("%d",&A);

  for(i=A;i<A+4;i++)

  {

    for(j=A;j<A+7;j++)

   {

    if(i!=j&&i!=k&&j!=k){

    printf("%d%d%d",i,j,k);

    count++;

    }

      if(count%6!=0)

      printf(" ");

      else

      printf("\n");

   }

  }

  return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编程