解题思路:
注意事项:
要注意进行一次大循环后,哪些值应该变,哪些值应该不变!
参考代码:
#include<stdio.h> int main() { int n,N; int i,sum; scanf("%d",&N); for(n=1;n<=N;n++) { sum=0; // 因为sum的值进行一次大循环后需要还原,所以将sum的值定义在这里! for(i=1;i<n;i++) { if(n%i==0) { sum=sum+i; } } if(sum==n) { printf("%d its factors are ",n); for(i=1;i<n;i++) { if(n%i==0) { printf("%d ",i); } } printf("\n"); } } return 0; }
0.0分
0 人评分