C语言“完数”代码讲解

2025-10-19 18:24:00

1、首先打开CodeBlocks,创建一个新项目。

项目语言,选择“c”, 我们将项目名称命名为“WanNumber”,

然后下一步,“finish”。

C语言“完数”代码讲解

C语言“完数”代码讲解

C语言“完数”代码讲解

C语言“完数”代码讲解

C语言“完数”代码讲解

2、创建好项目后,我们打开 “main.c”文件。

在这里我们先分析一下题目。

一个数如果等于他所有因子之和 称为完数 如6的因子 1,2,3 6=1+2+3输出1000内的完数,并且打印出因子 6 is factors are 1,2,3

C语言“完数”代码讲解

C语言“完数”代码讲解

3、首先思考程序    循环查找1000内的数,    对每一个数进行完数判断    是完数 则打印,非完数则继续循环。

*本次我们使用 自定义函数的知识来完成。

C语言“完数”代码讲解

4、开始我们先写出大的框架。

在main中,定义相关变量,并写出循环框架。

这个循环语句,就是查找1000内的每一个数的。

*其中难懂的是

 rember变量用来存取通过函数判断出来的完数,

m是打印特定语句的变量

这些在后面就能明白了

C语言“完数”代码讲解

5、写完大框架,接下来需要判断完数的方法,我们在main上面声明一个factor函数,其返回值为整型,需要两个参数。

接下来 在最后面 定义 factor函数。

C语言“完数”代码讲解

6、参数中的n就是第i个数(就是()内的变量)

result就是因数之和

这里m应该就清楚它的作用了,它是决定要不要打印以下语句的变量。

C语言“完数”代码讲解

7、进一步完善函数内容

for循环主要目的就是 检索n的每一个因数

循环完毕后result就是因子之和

最后函数的返回值是result 也就是因数之和

C语言“完数”代码讲解

8、再回到main中,我们开始补充for循环。

每次开始先为rember初始化,rember就是i的因数之和

判断i与rember是否相等,相等即i是完数。

同时m允许打印相关的 文本话语

再次执行factor() 是为了将每个因子分别打印出来

C语言“完数”代码讲解

9、回到 factor函数中 再次补全,打印语句。

用来打印好完数的每一个因子。

注意红框内的语句写的位置

C语言“完数”代码讲解

10、一下就是 所有代码。

我们运行看看结果。

1000内只有3个完数 6,28,496 

还是挺高效的

C语言“完数”代码讲解

C语言“完数”代码讲解

C语言“完数”代码讲解

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢