|  | 
 
 发表于 2020-11-17 23:49:23
|
显示全部楼层 
| 本帖最后由 jackz007 于 2020-11-18 00:01 编辑 
 复制代码#include <stdio.h>
int sum(int n)
{
        int k , s                                              ;
        for(s = 1 , k = 2 ; k < n ; k ++) if(! (n % k)) s += k ;
        return s                                               ;
}
main(void)
{
        int a , c , k , m , n                                  ;
        scanf("%d%d" , & m , & n)                              ;
        for(c = 0 , k = m ; k <= n ; k ++) {
                a = sum(k)                                     ;
                if(a != k && sum(a) == k) {
                        c ++                                   ;
                        printf("%4d\t%4d\n" , k , a)           ;
                        k = a                                  ;
                }
        }
        if(! c) printf("指定范围没有友好数。\n")               ;
}
编译、运行实况
 
 复制代码D:\00.Excise\C>g++ -o fx fx.c
D:\00.Excise\C>fx
1 10000
 220     284
1184    1210
2620    2924
5020    5564
6232    6368
D:\00.Excise\C>
 | 
 |