码迷,mamicode.com
首页 > 其他好文 > 详细

C刷题记录-1017

时间:2017-11-09 14:57:25      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:因此   for   cto   一个   i++   actor   输出   +=   ++   

题目描述

一个数如果恰好等于不包含它本身所有因子之和,这个数就称为"完数"。 例如,6的因子为1、2、3,而6=1+2+3,因此6是"完数"。 编程序找出N之内的所有完数,并按下面格式输出其因子

输入

N

输出

? its factors are ? ? ?

样例输入

1000

样例输出

6 its factors are 1 2 3 
28 its factors are 1 2 4 7 14 
496 its factors are 1 2 4 8 16 31 62 124 248 

 1 #include <stdio.h>
 2 #include <math.h>
 3 
 4 int main(){
 5   int i,n,j,k,count,factor_sum=0;
 6   scanf("%d",&n);
 7   for(i = 2; i < n; i++){
 8      int arr[100]={0};
 9      count = 0;factor_sum = 0;
10      for(j = 1;j < i; j++){
11         if (i % j == 0)
12         {
13            arr[count] = j;
14            count++;
15            factor_sum += j;
16         }
17      }
18      if (factor_sum == i)
19      {
20         printf("%d its factors are ",i);
21         for(k = 0; k < count; k++)
22         {
23           printf("%d ",arr[k]);
24         }
25         printf("\n");
26      }
27   }
28   return 0;
29 }

 

C刷题记录-1017

标签:因此   for   cto   一个   i++   actor   输出   +=   ++   

原文地址:http://www.cnblogs.com/xiangxyq/p/7808663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!