-kasha 发表于 2023-9-21 14:36:26

大神们,怎么让输出的数,每6个数一行

#include<stdio.h>

int main()
{
        int a,b,c,x,y,z,n,m;
        scanf("%d",&a);/*输出1-6整数*/
        m=a;
        n=a+3;
        while(a<=n)
        {
                x=a;
                b=m;
                a++;
                while(b<=n)
                {
                        y=b;
                        c=m;
                        b++;
                        while(c<=n)
                        {
                                z=c;
                                c++;
                                printf("%d%d%d ",x,y,z);
                        }
                }
        }   
return 0;       
}
大神们,怎么把我这个输出的结果,每6个一行

isdkz 发表于 2023-9-21 14:36:36

可以在printf语句中加入一个判断,当输出的数是第6个数时,就换行输出。代码如下:

#include<stdio.h>

int main()
{
    int a,b,c,x,y,z,n,m;
    scanf("%d",&a);/*输出1-6整数*/
    m=a;
    n=a+3;
    while(a<=n)
    {
      x=a;
      b=m;
      a++;
      while(b<=n)
      {
            y=b;
            c=m;
            b++;
            while(c<=n)
            {
                z=c;
                c++;
                printf("%d%d%d ",x,y,z);
                if((x-1)*6 + (y-1)*2 + z == 18) // 当输出的是第6个数时,换行
                  printf("\n");
            }
      }
    }   
    return 0;      
}


这里的判断条件是 (x-1)*6 + (y-1)*2 + z == 18 ,因为每行输出6个数,每个数由3个数字组成,所以第6个数的和是18。

-kasha 发表于 2023-9-21 14:44:10

isdkz 发表于 2023-9-21 14:36
可以在printf语句中加入一个判断,当输出的数是第6个数时,就换行输出。代码如下:




谢谢
页: [1]
查看完整版本: 大神们,怎么让输出的数,每6个数一行