初学者的C语言题目

一个数如果恰好等于它的所有因子之和,这个数就称为“完数”。请编写一个判别m是否为完数的函数,并编写主函数,通过调用此函数统计自然数1~100完数的个数。谁能编个简单点的,... 一个数如果恰好等于它的所有因子之和,这个数就称为“完数”。请编写一个判别m是否为完数的函数,并编写主函数,通过调用此函数统计自然数1~100完数的个数。

谁能编个简单点的,初学者能看懂的..
展开
 我来答
hughxing
2009-11-13 · TA获得超过4358个赞
知道小有建树答主
回答量:495
采纳率:0%
帮助的人:0
展开全部
//完数是指一个数恰好等于它的因子之和,如6=1+2+3
#include<stdio.h>
#include<conio.h>

int count(int a,int b);//函数声明

int main()
{
int a,b,t;
printf("输入统计范围:\n请输入起始值:");
scanf("%d",&a);
printf("请输入终止值:");
scanf("%d",&b);
t = count(a,b);//执行该函数,统计出个数,并返回给变量t
printf("在区间[%d,%d]之间,完数个数为:",a,b);
printf("%d",t);//输出
getch();
return 0;
}
int count(int a,int b)
{
int i,j,sum,k=0;
for(i=a;i<=b;i++)//在区间[a,b]中检验每个数是否完数
{
sum=0;
for(j=1;j<i;j++)
{
if((i%j)==0)sum+=j;//因子求和
}
if(i==sum)//如果是完数,计数器加1,
{
k++;//计数器k用来记录完数的个数
// printf("%d\n",i);//如需要输出该完数可去掉前面的注释符号//,
}
}
return k;
}
驀然回首時
2009-11-13 · TA获得超过515个赞
知道小有建树答主
回答量:199
采纳率:0%
帮助的人:173万
展开全部
#include<stdio.h>
int wanshu(int x){
int i,sum=0;
for(i=1;i<x;i++){
if(x%i==0) sum=sum+i;
}
if(x==sum) return 1;
else return 0;
}
void main(){
int n,num;
printf("不超过100的完数有:");
for(n=1;n<=100;n++)
if(wanshu(n)==1) printf(" %d",n);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
asdf511
2009-11-13 · TA获得超过485个赞
知道小有建树答主
回答量:262
采纳率:0%
帮助的人:0
展开全部
你去找“C程序100例”吧。那里有。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式