知道如何找因数,但不知道如何用for结构来判断是否为完数,并且按要求输出😭
3条回答 默认 最新
- CSDN专家-天际的海浪 2022-04-10 22:59关注
#include<stdio.h> int main() { int i, j, s, n; /*变量i控制选定数范围,j控制除数范围,s记录累加因子之和*/ int a[100],l; scanf("%d", &n); /* n的值由键盘输入*/ for( i=2; i<n; i++ ) { l=0; s=0; /*保证每次循环时s的初值为0*/ for( j=1; j<i; j++ ) { if(i%j == 0) /*判断j是否为i的因子*/ { s += j; a[l++] = j; } } if(s == i) /*判断因子这和是否和原数相等*/ { printf("%d:", i); for (j = 0; j < l; j++) printf("\t%d", a[j]); printf("\n"); } } return 0; }
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用