m0_74739776 2022-11-08 22:43 采纳率: 50%
浏览 70

问题出在空格怎么控制,

某天,诺诺看到三七二十一(3721)数,觉得很神奇,这种数除以3余2,而除以7则余1。例如8是一个3721数,因为8除以3余2,8除以7余1。现在给出两个整数a、b,求区间[a,b]中的所有3721数,若区间内不存在3721数则输出“none”。
输入格式:

首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试输入两个整数a,b(1≤a<b<2000)。
输出格式:

对于每组测试,在一行上输出区间[a,b]中所有的3721数,每两个数据之间留一个空格。如果给定区间不存3721数,则输出“none”(引号不必输出)。
输入样例:

2
1 7
1 100
输出样例:

none
8 29 50 71 92

#include<stdio.h>
main()
{
int t,a,b,i=1,p=0;
scanf("%d",&t);
for(int i=1;i<=t;i++)
{
scanf("%d %d",&a,&b);
for(int j=a;j<=b;j++)
{
if(j%3==2&&j%7==1)
{
if(p==0)
printf("%d",j);
else printf(" %d",j);
p++;
}
}
printf("\n");
if(p==0)
printf("none\n");
}
return 0;
}

  • 写回答

1条回答 默认 最新

  • bingbingyihao 2022-11-09 00:07
    关注

    回答:你这个小傻瓜,就不知道先把数据保存起来,到时候挨个取出来不就是了嘛;

    img

    #include <stdio.h>
    #include <stdlib.h>
    
    void cal(int a, int b)
    {
        int p = 0;
        for (int j = a; j <= b; j++)
        {
            if (j % 3 == 2 && j % 7 == 1)
            {
                if (p == 0)
                    printf("%d", j);
                else printf(" %d", j);
                p++;
            }
        }
        printf("\n");
        if (p == 0)
            printf("none\n");
    }
    
    main()
    {
        int t, i;
        scanf("%d", &t);
        int* a = (int*)malloc(t * sizeof(int));
        int* b = (int*)malloc(t * sizeof(int));
    
        for (int i = 0; i < t; i++)
        {
            scanf("%d %d", &a[i], &b[i]);
        }
    
        for (int i = 0; i < t; i++)
        {
            cal(a[i], b[i]);
        }
    
        return 0;
    }
    /*
    2
    1 7
    1 100
    */
    
    评论

报告相同问题?

问题事件

  • 创建了问题 11月8日

悬赏问题

  • ¥15 数据库原理及应用上机练习题
  • ¥30 征集Python提取PDF文字属性的代码
  • ¥15 如何联系真正的开发者而非公司
  • ¥15 有偿求苍穹外卖环境配置
  • ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,
  • ¥20 Ue4.26打包win64bit报错,如何解决?(语言-c++)
  • ¥15 clousx6整点报时指令怎么写
  • ¥30 远程帮我安装软件及库文件
  • ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
  • ¥20 深信服vpn-2050这台设备如何配置才能成功联网?