Ⅰ c语言500以内完数之和
#include<stdio.h>
voidmain()
{
inti,j,t,s=0;
for(i=2;i<500;i++)
{t=1;
for(j=2;j<=i/2;j++)
if(i%j==0)t=t+j;
if(i==t)s=s+t;
}
printf("s=%d",s);
}
Ⅱ c语言求2到1000内的所有完数【在线求各位赐教】
#include<stdio.h>
intmain()
{ inta,i,i1,sum=0;
scanf("%d",&a);//输入一个计算的范围数据
for(i=1;i<=a;i++)//范围数据累加循环
{
for(i1=1;i1<i;i1++)//完全数不包含本身所以i1<i
{
if(i%i1==0)//mod余为0
{
sum=sum+i1;//累加结果
}
}
if(sum==i)//判断是否是完全数
{
printf("%d是完全数,分别由",sum);//输出
for(i1=1;i1<sum;i1++)
{
if(sum%i1==0)
printf("%d",i1);
}
printf("这些数组成 ");
}
sum=0;
}
return0;
}
//=============以下是根据你的源码改动一了下,对比一下就知道哪错了============
/*
#include<stdio.h>
voidmain()
{
inta,b,s=0;
for(a=2;a<=1000;a++)
{
for(b=1;b<a;b++)
{
if(a%b==0)
s=s+b;
}
if(s==a)
printf("%d ",s);
s=0;//这里s必须置0,否则再次循环,s初始值就是上次的值。
}
return0;
}
*/
Ⅲ 怎么用C语言编写程序来找出2~5000中的完数
1、解题思路:所谓完数是一些特殊的自然数。如果一个数恰好等于它的因子之和,则称该数为“完全数”。先定义一个函数用于判断一个数是否是完数,接着依次从2到5000依次循环判断。
2、参考代码:
#include<stdio.h>
intfun(intn){//判断n是否是完数
inti,sum=0;
for(i=1;i<n;i++)
if(n%i==0)sum+=i;
if(sum==i)return1;
return0;
}
intmain()
{
inti;
for(i=2;i<5000;i++)
if(fun(i))
printf("%d",i);
return0;
}
3、运行结果:628496
Ⅳ C语言编程时怎样自动输入1到500内的所以整数
int x[500];
int i;
for (i=1;i<=500;i++) x[i]=i;
x 数组里有了1,2,3,直到 500 这 五百个整数。
Ⅳ 用C语言编程:输出2~100之间所有完数,完数是指该数各因子之和等于该数本身
C语言程序如下:
#include <stdio.h>
int main()
{
long int i,j,sum;
for(i=2;i<100;i++)
{ sum=0;
for(j=2;j<=i/2;j++)
{
if(i%j==0)
{
sum=sum+j;
}
}
if(i==sum+1)
printf("%d ",i);
}
}
(5)c语言输入2到500的完全数扩展阅读:
如果一个数恰好等于它的因子之和,则称该数为“完全数”。
第一个完全数是6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6。
第二个完全数是28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。
第三个完全数是496,有约数1、2、4、8、16、31、62、124、248、496,除去其本身496外,其余9个数相加,1+2+4+8+16+31+62+124+248=496。后面的完全数还有8128、33550336等等。
Ⅵ 【C语言】求出200到500之间所有完数的和。
每次循环结束后k需要清零的啊
#include "stdafx.h"
int main(int argc, char* argv[])
{
int i,j,k,p=0;
for(i=200;i<=500;i++){
k=0;
for(j=1;j<=int(i/2);j++)
if(i%j==0)
k+=j;
if(i==k) p+=i;}
printf("%d\n",p);
return 0;
}
Ⅶ 用c语言编程求[2,500]之间的完数
参考代码如下:
#include <stdio.h>
void main()
{
int i,sum,t;
for(i=2;i<=500;i++)
{
for(sum=1,t=2;t<=i-1;t++)
{
if(i%t==0)
sum=sum+t;
}
if(sum==i){
printf("%d ",i);
}
}
}
Ⅷ C语言问题,输出1-500完数
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main()
{ int i,j, t,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
{ t=0;
for(j=1;j<i;j++)
if(i%j==0) t+=j;
if(t==i)
{ printf("\n%d is a full number\n",i);
printf("factors of %d are:\t",i);
for(j=1,j<i,j++) 这里应该是分号(vc里不能用中文的符号要换成英文输入法输入符号)
if(i%j==0) printf("%d",j);
}
}
printf("\n");
}
Ⅸ C语言:第三题,设计程序找到1到500之间所有的完全数(所有小于一个球的因子之和恰好等于这个数的数
#include<stdio.h>
#include<math.h>
voidmain()
{
inti,j,sum;
printf("500以内的完数: ");
for(i=1;i<500;i++)
{
sum=0;
for(j=1;j<=i/2;j++)
if(i%j==0)
sum+=j;
if(i==sum)
printf("%5d",i);
}
printf(" ");
}