十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
C语言程序如下:
目前创新互联建站已为成百上千家的企业提供了网站建设、域名、网络空间、网站运营、企业网站设计、寻乌网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
#include "stdio.h"
int main()
{
int n,i,sum=0;//定义一个存放因子和的变量,以及需要判断的数n,和循环条件用到的i
printf("请输入需要判断的数:");
scanf("%d",n);//存放需要判断的数n
for(i=1;in;i++)//循环条件找出因子并累加
{
if(n%i==0)
sum+=i;
}
if(n==sum)
printf("%d 是完数\n",n);
else
printf("%d 不是完数\n",n);
return 0;
}
扩展资料:
程序思路
假设一个数为n,我们可以用循环条件,让n分别和1,2,3,4,5……n-1进行判断是否能被整除,我们可以通过取余(%)的方法来进行判断。如果判断出来取余结果为0,那么就把这些因子全部加起来,得到因子的和。
接下来,将因子的和与n进行比较,如果相等,那么就是完数,反之不是完数。
判断一个完数,就是运用基本输入函数(scanf),将要判断的数据输入进来,之后运用循环条件来判断。
1、打开c语言编辑器,新建一个C语言空白文件:
2、然后就可以开始编写代码了,这里完数的意思就是一个数等于它的因子之和,比如6的因子为1、2、3,而6刚好是这些数之和。根据完数的定义,程序要输入一个数的范围,接着计算出所选取的整数i的因子,将各因子累加到变量s
,若s等于i,则可确认i为完数:
3、最后运行查询,输入一个范围,程序就会自动查找这个范围内的数字里有那些完数,计算完成后会将其结果打印出来:
#includestdio.h
int IsPerfect(int n)
{int i,s=1;
for(i=2;i=n/2;i++)
if(n%i==0)s+=i;
return s==n;
}
int main()
{int n;
scanf("%d",n);
printf("%d is %sa perfect number\n",n,IsPerfect(n)?"":"not ");
return 0;
}