完全数 , 又称完美数或 ( PerfectNumber ), 它是指这样的一些特殊的自然数 , 它所有的真因子 ( 即除了自身以外的约数 ) 的和 , 恰好等于它本身。例如, 6 就是一个完全数,是因为 6 = 1 + 2 + 3 。请编写一个判断完全数的函数 IsPerfect() ,然后判断从键盘输入的整数是否是完全数。注意: 1 没有真因子,所以不是完全数。 代码如下 , 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 1. #include
2. #include
3. int IsPerfect(int x); 4. int main() 5. { 6. int m; 7. printf("Input m:"); 8. scanf("%d", &m); 9. 10. if (_________________) /* 完全数判定 */ 11. printf("%d is a perfectnumber\n", m); 12. else 13. printf("%d is not a perfectnumber\n", m); 14. return 0; 15. } 16. 17. 18. /* 函数功能:判断完全数,若函数返回 0 ,则代表不是完全数,若返回 1 ,则代表是完全数 */ 19. int IsPerfect(int x) 20. { 21. int i; 22. int total = 0; /* 1 没有真因子,不是完全数 */ 23. 24. for (__________________) 25. { 26. if (___________) 27. total = total + i; 28. } 29. return total==x ? 1 : 0; 30. }