1、首先打开CodeBlocks,创建一个新项目。项目语言,选择“c”, 我们将项目名称命名为“WanNumber”,然后下一步,“finish”。
2、创建好项目后,我们打开 “main.c”文件。在这里我们先分析一下题目。一个数如果等于他所有因子之和 称为完数 如6的因子 1,2,3 6=1+2+3输出1000内的完数,并且打印出因子 6 is factors are 1,2,3
3、首先思考程序 循环查找1000内的数, 对每一个数进行完数判断 是完数 则打印,非完数则继续循环。*本次我们使用 自定义函数的知识来完成。
4、开始我们先写出大的框架。在main中,定义相关变量,并写出循环框架。这个循环语句,就是查找1000内的足饶戽沸每一个数的。*其中难懂的是rember变量用来存取通过函数判断出来的完数,m是打印特定语句的变量这些在后面就能明白了
5、写完大框架,接下来需要判断完数的方法,我们在main上面声明一个factor函数,其返回值为整型,需要两个参数。接下来 在最后面 定义 factor函数。
6、参数中的n就是第i个数(就是()内的变量)result就是因数之和这里m应该就清楚它的作用了,它是决定要不要打印以下语句的变量。
7、进一步完善函数内容for循环主要目的就是 检索n的每一个因数循环完毕后result就是因子之和最后函数的返回值是result 也就是因数之和
8、再回到main中,我们开始补充for循环。每次开始先为rember初始化,rember就是i的因数之和判断足毂忍珩i与rember是否相等,相等即i是完数。同时m允许打印相关的 文本话语再次执行factor() 是为了将每个因子分别打印出来
9、回到 factor函数中 再次补全,打印语句。用来打印好完数的每一个因子。注意红框内的语句写的位置
10、一下就是 所有代码。我们运行看看结果。1000内只有3个完数 6,28,496还是挺高效的