枫溪02 2021-10-29 15:08 采纳率: 84.6%
浏览 35
已结题

c语言关于因子的问题

img


#include<stdio.h>
#include<math.h>
int main()
{
int m,n,i,j,sum=0;
scanf("m=%d\nn=%d",&m,&n);
printf("%d~%d之间的完数有:",m,n);
for(i=m;i<=n;i++)
{
if(i==1)
continue;
for(j=1;j<i;j++)
{
if(i%j==0)
sum+=j;
}
if(sum==i)
printf("%d\t",i);
}
return 0;
}
为啥输出为空

  • 写回答

1条回答 默认 最新

  • -Undefined_ 2021-10-29 15:14
    关注

    修改了一下你的代码,for循环里sum要初始化为0,不然进入循环后,sum就会保存之前的i的因子和

    #include<stdio.h>
    #include<math.h>
    int main() {
        int m,n,i,j,sum=0;
        printf("m=");
        scanf("%d",&m);
        printf("n=");
        scanf("%d",&n);
        printf("%d~%d之间的完数有:",m,n);
        for(i=m; i<=n; i++) {
            sum=0;
            if(i==1)
                continue;
            for(j=1; j<i; j++) {
                if(i%j==0)
                    sum+=j;
            }
            if(sum==i)
                printf("%d\t",i);
        }
        return 0;
    }
    

    觉得有用的话采纳一下哈

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月6日
  • 已采纳回答 10月29日
  • 创建了问题 10月29日

悬赏问题

  • ¥15 (SQL语句|查询结果翻了4倍)
  • ¥15 Odoo17操作下面代码的模块时出现没有'读取'来访问
  • ¥50 .net core 并发调用接口问题
  • ¥15 网上各种方法试过了,pip还是无法使用
  • ¥15 用verilog实现tanh函数和softplus函数
  • ¥15 Hadoop集群部署启动Hadoop时碰到问题
  • ¥15 求京东批量付款能替代天诚
  • ¥15 slaris 系统断电后,重新开机后一直自动重启
  • ¥15 QTableWidget重绘程序崩溃
  • ¥15 谁能帮我看看这拒稿理由啥意思啊阿啊