c语言编程练习题:7-45 找完数

简介: c语言编程练习题:7-45 找完数

#include <stdio.h>


int is_perfect_num(int num){

   int sum=0;

   int i;

   for (i=1;i<num;i++){

       if (num%i==0){sum+=i;}

   }

   if (sum==num){return 1;}

   return 0;

}

int main(){

   int m,n;

   int t,i,j;

   int count=0;

   if (scanf("%d",&m)!=EOF && scanf("%d",&n)!=EOF){

       for (i=m;i<=n;i++){

           t = is_perfect_num(i);

           //printf("%d %d\n",i,t);

           if (t==1){

               count++;

               //输出具体的信息

               printf("%d = 1",i);

               for (j=2;j<i;j++){

                   if (i%j==0){printf(" + %d",j);}

               }

               printf("\n");

           }


       }

       if (count==0){printf("None");}

   }else{

       printf("int m and n occur something wrong");

   }

   

   return 0;

}


目录
相关文章
|
2天前
|
存储 Serverless C语言
每天一道C语言编程(结构体的运用):这是一年的第几天?
每天一道C语言编程(结构体的运用):这是一年的第几天?
6 0
|
2天前
|
C语言
每天一道C语言编程(递归:斐波那契数,母牛的故事)
每天一道C语言编程(递归:斐波那契数,母牛的故事)
5 0
|
2天前
|
C语言
每天一道C语言编程(2^k进制数)
每天一道C语言编程(2^k进制数)
6 0
|
2天前
|
C语言
每天一道C语言编程(数组操作)
每天一道C语言编程(数组操作)
6 0
|
2天前
|
C语言
每天一道C语言编程(数字转字母,字母转数字)
每天一道C语言编程(数字转字母,字母转数字)
5 0
|
2天前
|
C语言
每天一道C语言编程(求PI)
每天一道C语言编程(求PI)
5 0
|
2天前
|
C语言 C++
每天一道C语言编程:(去掉:双斜杠注释,去掉空格)
每天一道C语言编程:(去掉:双斜杠注释,去掉空格)
4 0
|
2天前
|
C语言
每天一道C语言编程:Hanoi双塔问题
每天一道C语言编程:Hanoi双塔问题
11 0
|
2天前
|
C语言
每天一道C语言编程:求N以内的素数(普通方法+优化方法)
每天一道C语言编程:求N以内的素数(普通方法+优化方法)
6 0
|
2天前
|
测试技术 C语言
每天一道C语言编程:Cylinder(圆柱体问题)
每天一道C语言编程:Cylinder(圆柱体问题)
7 0