玻璃江


私信TA

用户名:zzj5974

访问量:2326

签 名:

立马化腾为目标

等  级
排  名 28740
经  验 530
参赛次数 0
文章发表 2
年  龄 18
在职情况 学生
学  校 北京师范大学珠海分校
专  业 计算机科学与技术

  自我简介:

不读书不读书

解题思路:

               很明显1不是完数设i为2代表起点小于等于N的for循环,1一定是任何完数的因子,而完数的因子不包括本身,设j为内循环故要小于i。我觉得下面代码思路清晰可以参考下 



注意事项:





参考代码:

#include<stdio.h>
int main(){
 int a,N,t;
 scanf("%d",&N);
 for(int i=2;i<=N;i++){
 t=0;
 for(int j=1;j<i;j++){
 if(i%j==0){
 t+=j;
 }

 }
 if(t==i){
 printf("%d its factors are 1",i);
 for(int j=2;j<i;j++){
 if(i%j==0)
 printf(" %d",j);
 }
 printf("\n");
 }
 }
}

 

0.0分

0 人评分

  评论区

  • «
  • »