/**************************************************第一题************************************************************/
//一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。
#include<stdio.h>
main()
{
int n,i,j;
for(i=3;i<=1000;i++)
{
n=0;
for(j=1;j<i;j++)
{
if((i%j)==0)
n+=j;
}
if(i==n)
printf("%d\n",n);
}
getch();
}
/**************************************************第一题************************************************************/
/**************************************************第二题************************************************************/
/*指针的使用*/
#include<stdio.h>
main()
{
int num1=50,num2=100;
int *ptr1,*ptr2;
ptr1=&num1;
printf("num1的值是:%d",*ptr1);
printf("\nnum1的地址是:%x\n",ptr1);
ptr2=&num2;
printf("num2的值是:%d",*ptr2);
printf("\nnum2的地址是:%x\n",ptr2);
*ptr2=*ptr1;
printf("\n重新赋值后num2的值是:%d\n",*ptr2);
printf("\n重新赋值后num2的地址是:%x\n",ptr2);
}
/**************************************************第二题************************************************************/
/**************************************************第三题************************************************************/
/*****************************************指向数组的指针实例***************************************/
/*#include<stdio.h>
void main()
{
int data[]={5,10,15,20,25};
int i=0;
int *ptr;
ptr=data;
while(i<5)
{
printf("\n第%d个元素的存储地址为:%x,值为:%d\n",i+1,ptr,*ptr);
i++;
ptr++;
}*/
}
/**************************************************第三题************************************************************/