海洋之心


私信TA

用户名:wanggongsheng

访问量:132609

签 名:

等  级
排  名 18
经  验 21668
参赛次数 3
文章发表 163
年  龄 26
在职情况 学生
学  校
专  业 计算机技术

  自我简介:

读研ing,平时不登录dotcpp

#include<stdio.h>
#include<math.h>
int main(void)
{
	int n; 
	int i,j;
	int sum=1;
	scanf("%d",&n);
	for(i=2;i<=n;i++)
	{
				for(j=2;j<=(int)sqrt(i);j++)
				if(i%j==0)
				{
					if(i/j==j)sum+=j;
					else sum +=i/j + j;
				}
				if(sum==i)
				{
					printf("%d its factors are",i);
					for(j=1;j<i;j++)
						if(i%j==0)printf(" %d",j);
					printf("\n");
				}
				sum=1;
	}
	return 0 ;
}


 

0.0分

2 人评分

  评论区

但还是很帅的,嘿嘿。
2018-02-13 09:11:58
代码写的真丑。
2018-02-13 09:06:37
if(i/j==j)sum+=j;
                    else sum +=i/j + j;
什么意思啊
2018-02-07 21:48:59
就是开方,这是一个数学上的知识
2018-02-03 13:06:48
为什么是j<=(int)sqrt(i)呢而不是直接小于i呢?谢谢
2017-08-16 18:19:41
j<=(int)sqrt(i)这句话是什么意思??
2017-07-28 15:14:02
  • «
  • 1
  • »