递归求是否是完数
#include <stdio.h>
int f(int a,int b){
if(b==1){
return 1;
}
if(a%b==0){
return b+f(a,b-1);
}else{
return f(a,b-1);
}
}
int main(){
int a=0;
scanf("%d",&a);
int b=a-1;
int ret=f(a,b);
if(a==ret){
printf("%d是完数\n",a);
}else{
printf("%d不是完数\n",a);
}
return 0;
}