解题思路:嵌套循环逐个判断
注意事项:重置sum、count!!!!!!
参考代码:
#include <stdio.h> int main() { //输入值、当前值、总和、下标计数器、公因数数组 int num,cur,sum,count,factors[100]; scanf("%d",&num); // 1、找出 2——num 所有完数 for(cur=2; cur<=num; cur++) { sum=count=0; //重置 // 2、找出当前数的所有公因数 for(int i=1; i<=cur/2; i++) { if(cur%i==0) { sum+=i; //总和 factors[count++]=i; //公因数 } } // 3、是完数则输出 if(sum==cur) { printf("%d its factors are",cur); for(int i=0; i<count; i++) printf(" %d",factors[i]); printf("\n"); } } }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:946 |
汽水瓶 (C语言代码)浏览:610 |
简单的a+b (C语言代码)浏览:632 |
wu-淘淘的名单 (C++代码)浏览:1339 |
三角形 (C++代码)记忆化搜索浏览:1234 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:472 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:588 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:489 |
C二级辅导-等差数列 (C语言代码)浏览:695 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:437 |