c精彩编程挑战高手12

来源:百度知道 编辑:UC知道 时间:2024/06/22 10:14:16
以最简代码编写程序输出1-10000之间的相亲数,要求无重复。
以最简代码编写,代码不超过20行。

#include<stdio.h>
#include<conio.h>
void main()
{
int number(int x);
int i,j,k;
clrscr();
printf("Output the numbers:\n");
for(i=3;i<=10000;i++)
{
j=number(i);
k=number(j);
if(i==k)
{
if(i<j)
{
printf("%d,%d\n",i,j);
}
}
}
getch();
}
int number(int x)
{
int sum=1,a;
for(a=2;a<=x/2;a++)
{
if(x%a==0)
{
sum+=a;
}
}
return(sum);
}