输入:

输入一个整数n(0 < n <=1000)

输出:

输出2到n间的所有完数。注:如果有多个,输出在同一行,用空格隔开,如果没有,输出“NO” 。如:输入3 ,输出:NO ;输入8 ,输出:6;输入30,输出:6 28。

复制代码
#include<stdio.h>
main()
{
int n,i,j,sum=0,s=0;
scanf("%d",&n);
for(i=2;i<=n;i++)
{
for(j=1;j<i;j++)
{
if(i%j==0)
{
sum+=j;
}
 
}
if(i==sum)
{
printf("%d ",i);
s++;
} 
sum=0;
}
 
if(s==0)
{
printf("NO");
}
 
}
复制代码

 

相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示