baby00qi 2016-03-10 08:32 采纳率: 50%
浏览 1194
已采纳

关于重复输出的问题,求大神帮我看看

 #include<stdio.h>
int main()
{
    for(int i=1;i<=46;i++){
        for(int j=i+2;j<=48;j++){
            //for(int num1=i;num1<=46;num1++)  //为什么这两行写了就会出来很多重复的呢? 
                //for(int num2=j;num2<=48;num2++)
                    int change=0;
                    change=i*(i+1)-i-i-1;
                    change+=j*(j+1)-j-j-1;
                    if(change==(2015-1225)){
                        printf("%d %d\n",i,j);
                    }       
        }
    }

}
  • 写回答

3条回答 默认 最新

  • 小灸舞 2016-03-10 09:00
    关注

    注释那两个for以后你有两组i,j满足条件,[10,27],[16,24]
    打开注释后,你想想,当i=10,j=27时,里面两个for循环每次循环都能满足if条件,都能打印,所以一共会打印
    (46-10+1)*(48-27+1)=814次
    当i=16,j=24时,又会打印(46-16+1)*(48-24+1)=775次
    楼主不信的话,可以弄个变量记录打印的次数

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料