解题思路: 俩层for循环,外层遍历从1到N每个数,内层进行判断每个数是否为完数。
注意事项: 保证每次外层for循环遍历时条件一致!
参考代码:
#include<iostream> using namespace std; int main(void) { int N; int arr[10000]; int sum = 0, len = 0; cin >> N; for (int i = 1; i <= N; i++) { for (int j = 1; j < i; j++) { if (i%j == 0) { sum += j; arr[len++] = j; } } if (sum == i) { cout << i << " its factors are "; for (int k = 0; k < len; k++)cout << arr[k] << " "; cout << endl; } sum = 0, len = 0; } return 0; }
0.0分
1 人评分
弟弟的作业 (C++代码)浏览:1304 |
【亲和数】 (C语言代码)浏览:541 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:572 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:946 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1306 |
求圆的面积 (C语言代码)浏览:1669 |
1009题解浏览:750 |
母牛的故事 (C语言代码)浏览:550 |
幸运数 (C++代码)浏览:1264 |
核桃的数量 (C语言代码)浏览:671 |