永发信息网

C语言输出一个输入的数组里的完美数,为什么只能输出第一个呢?

答案:1  悬赏:30  手机版
解决时间 2021-11-08 11:26
  • 提问者网友:斑駁影
  • 2021-11-08 07:07
C语言输出一个输入的数组里的完美数,为什么只能输出第一个呢?
最佳答案
  • 五星知识达人网友:酒者煙囻
  • 2021-11-08 07:52
你的累加变量n,在每个数判断完后,没有清零.
完整的C语言程序如下(改动的地方见注释)
#include 
int main() {
 int i,j,m,n,b,case_num;
 n=0;
 scanf("%d", &case_num);
 int arr[100];
 for(j=0;j  scanf("%d",&arr[j]);
 }
 for(i = 0; i < case_num; i++){
  n=0;//这里加一句,把n清零
  for(m=1;m   if(arr[i]%m==0)
    n+=m;
  }
  if(n==arr[i])
   printf("%d
",arr[i]);
 }
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯