c语言编程题 判断一个数是不是完数

 我来答
莫道無情
2019-07-09 · TA获得超过1.5万个赞
知道答主
回答量:317
采纳率:100%
帮助的人:10.3万
展开全部

C语言程序如下:

#include "stdio.h"

int main()

{

int n,i,sum=0;//定义一个存放因子和的变量,以及需要判断的数n,和循环条件用到的i

printf("请输入需要判断的数:");

scanf("%d",&n);//存放需要判断的数n

for(i=1;i<n;i++)//循环条件找出因子并累加

{

if(n%i==0)

sum+=i;

}

if(n==sum)

printf("%d 是完数\n",n);

else

printf("%d 不是完数\n",n);

return 0;

}

扩展资料:

程序思路

假设一个数为n,我们可以用循环条件,让n分别和1,2,3,4,5……n-1进行判断是否能被整除,我们可以通过取余(%)的方法来进行判断。如果判断出来取余结果为0,那么就把这些因子全部加起来,得到因子的和。

接下来,将因子的和与n进行比较,如果相等,那么就是完数,反之不是完数。

判断一个完数,就是运用基本输入函数(scanf),将要判断的数据输入进来,之后运用循环条件来判断。

志言工作室
2017-01-07 · 超过42用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:60.5万
展开全部
#include<stdio.h>
int main(){
int n,s=0,i;
printf("请输入一个数:");
scanf("%d",&n);
for(i=1;i<n;i++)
{
if(n%i==0)
s+=i;
}

if(s==n)
printf("是完数\n");
else
printf("不是完数\n");
}

如有不懂欢迎追问!

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式