解题思路:双重循环判断两个数i,j(i,j也是循环变量)的因数和是否相等。
两个函数,一个求因数和factor_sum(),另一个qinmi()调用factor_sum()判断两数是否亲密。
注意事项:i,j不相等。
参考代码:
#include<stdio.h>
#include<math.h>
void qinmi();
int factor_sum(int);
int main()
{
qinmi();
return 0;
}
int factor_sum(int n)//求一个数的因子之和。
{
int i;
int sum = 1;
for (i = 2; i <=n/2; i++)
{
if (n%i == 0)
sum += i;
}
return sum;
}
void qinmi()//判断两数是否亲密,注意i,j不相等。
{
int i, j;
for (i = 3; i <=3000; i++)
for (j = i+1; j <= 3000; j++)
{
if (factor_sum(i) == j && factor_sum(j) == i)
printf("(%d,%d)", i, j);
}
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复