第七次作业

第三题题目:在指定范围内输出完数,输入两个正整数m和n,输出m和n之间的完数,要求调用factorsum(number),它的功能是返回number的因子和。试编写程序

#include<stdio.h>
int main(void)
{
 int i,m,n;
 int factorsum(int number);
 scanf("%d%d",&m,&n);
 for(i=m;i<=n;i++)
  if(factorsum(i)==i)
   printf("%d",i);
  printf("\n");
  return 0;
}
int factorsum(int number);
{
    int i,sum;
 if(number==1)return 1;
 sum=0;
 for(i=1;i<=number/2;i++)
  if(number%i==0)
   sum=sum+i;
  return sum;
}

第六题题目:输出一个整数的逆序数;输入一个整数,将他逆序输出,要求调用函数reverse(number),他的功能是返回number的逆序数。

#include<stdio.h>
int main(void)
{
 int in,res;
 int reverse(int number);
 scanf("%d",&in);
 res=reverse(in);
 printf("%d\n",res);
return 0;
}
int reserse(int number)
{
   int flag,res;
   if(number>=0)flag=1;
   else{
    flag=-1;
    number=-number;
   }
   res=0;
   do{
      res=res*10+number%10;
   number/=10;
   }while(number!=0);
   return flag*res;
}

心得:两道题都是调用函数,有一点相似之处,打程序之前要对程序的算法及调用方法有清晰的思路,对函数还有一些些地方不是特别明白,希望可以在以后的学习中慢慢解决这些问题。

posted @ 2019-05-28 20:53  朱青?  阅读(130)  评论(0编辑  收藏  举报