第七次作业

 1 /*使用函数输出指定范围内的完数:输入两个正整数m,n(1<=m,n<=1000),输出m,n之间所有完数。
 2 要求定义并调用函数factorsum(number)*/
 3 #include<stdio.h>
 4 int factorsum (int n);
 5 int main()
 6 {
 7     int m,n,i;
 8     printf("input m,n(1<=m,n<=1000):");
 9     scanf("%d%d",&m,&n);
10     for(i=m;i<=n;i++)
11         if(factorsum(i)==i)
12         printf("%d\n",i);
13     printf("\n");
14 
15     return 0;
16 }
17 int factorsum(int n)
18 {
19     int k,sum=0;
20     for(k=1;k<n;k++)
21         if(n%k==0)
22         sum=sum+k;
23     return sum;
24 }

 1 /*输出一个整数的逆序数,要求定义并调用函数reverse(number)*/
 2 #include<stdio.h>
 3 int reverse(int n);
 4 int main()
 5 {
 6     int n;
 7     scanf("%d",&n);
 8     if(reverse(n)!=0)
 9      printf("%d\n",n);
10     return 0;
11     
12 }
13 int reverse(int n)
14 {
15     int t;
16     t=n;
17     while(n!=0){
18         t=n%10;
19         printf("%d",t);
20         n=n/10;
21         
22     }
23     return n;
24 }

 

心得:

1)起初子函数的返回出现问题

2)逆序数的算法出现错误和多处其他错误

3)通过对函数的定义更多的了解和掌握,对错误进行了分析并加以改正

posted @ 2019-05-28 20:15  尹文萃  阅读(185)  评论(0编辑  收藏  举报