{c++新人笔记}编写程序,求区间[2,m]中的完数个数
一个数的真因子(不包括其本身)之和等于它本身的数为完数,如28的真因子是1,2,4,7,14,且1+2+4+7+11=28,则28是完数。编写程序,求区间[2,m]中的完数个数。具体要求如下:点击“试题文件夹”按钮进入,打开项目,然后编写程序。#include<stdio.h>
#include<stdlib.h>
void main()
{
int m,i,j,temp,count=0;
scanf("%d",&m);
/*************代码开始**********/
for(j=2;j<=m;j++)
{
temp=0;
for(i=1;i<j;i++)
{
if(j%i==0)
temp+=i;
}
if(temp==i)
count++;
}
/***********代码结束************/
printf("区间[2,%d]的完数个数为%d\n",m,count);
system("pause");
}
【注意】:部分源程序在文件PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在/*****代码开始****/到/****代码结束****/之间填入缺省的若干语句,并且在该语句块中不允许声明新的变量以及不允许写printf输出语句。