循环结构-判断一个数是否为完全数(C语言)

同http://www.cnblogs.com/MichaelLee2015/p/4402993.html

 

#include <stdio.h>

int main()
{
    int num;//表示输入的数

    printf("请输入一个正整数,这个程序将判断此数是否为完全数\n");//提示用户输入
    scanf("%d",&num);//获取输入的数

    int sum = 0;//表示最后所有因子的和

    //思路:找出这个数num所有的因数并且相加得到sum,看是否等于这个数

    for (int i = 1; i < num; i++)
    {
        if (num % i == 0)//余数为0,即整除,也就是说i为num的因子
        {
            sum += i;//也可以写作sum=sum+i;
        }
    }

    if (sum == num)
    {
        printf("%d是完全数\n", num);
    }
    else
    {
        printf("%d不是完全数\n", num);
    }

    return 0;
}

 

posted @ 2015-04-11 11:17  MichaelLee2015  阅读(2891)  评论(0编辑  收藏  举报