解题思路:
很明显1不是完数设i为2代表起点小于等于N的for循环,1一定是任何完数的因子,而完数的因子不包括本身,设j为内循环故要小于i。我觉得下面代码思路清晰可以参考下
注意事项:
参考代码:
#include<stdio.h>
int main(){
int a,N,t;
scanf("%d",&N);
for(int i=2;i<=N;i++){
t=0;
for(int j=1;j<i;j++){
if(i%j==0){
t+=j;
}
}
if(t==i){
printf("%d its factors are 1",i);
for(int j=2;j<i;j++){
if(i%j==0)
printf(" %d",j);
}
printf("\n");
}
}
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:643 |
A+B for Input-Output Practice (VI) (C++代码)浏览:445 |
成绩转换 (C语言代码)浏览:1048 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:484 |
众数问题 (C语言代码)浏览:911 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:583 |
【蟠桃记】 (C语言代码)浏览:1084 |
C语言训练-自由落体问题 (C语言代码)浏览:650 |
Hello, world! (C语言代码)浏览:766 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:1483 |