1. 题目:一个数如果恰好等于它的因子之和,这个数被成为”完数”,例如:6=1+2+3.请编程找出1-n以内的完数 #include <stdio.h> #include <string.h> int wan(int num) { int i=0,j=0; int a[100]={0}; int n=0; int sum=0; printf("1-n中完数有:",n); for(i=0;i<=num;i++) { for(j=1;j<i;j++) { if((i%j)==0) { a[n] = j; n++; } } for(j=0;j<n;j++) { sum+=a[j]; } if(i==sum) { printf("%d\t",i); } n = 0; sum = 0; memset(a,0,sizeof(a)); } printf("\n"); } int main() { int n; printf("请输入一个数:"); scanf("%d",&n); wan(n); return 0; }