一个简单的求一千以内的完数的程序没有输出
我也没看出来哪里出了问题。。。#include<stdio.h>
#include<stdbool.h>
bool IsPerfect(int);
int main(void)
{
int i;
puts("There is all of perfect number less than 1000: ");
for(i = 2; i <= 1000; i++);
{
if(IsPerfect(i))
printf("%d ", i);
}
puts("");
return 0;
}
/**************************************
判断i是否是完数
思想为:变量s为可以整除i的数(div)的和
如果s和i相等则i是完数
**************************************/
bool IsPerfect(int i)
{
int div, s = 0;
int j = i / 2 + 1;
for(div = 1; div <= j; div++)
{
if(i % div == 0)
s += div;
}
if(s == i)
return true;
else
return false;
}
for(i = 2; i <= 1000; i++);
分号去掉 Croper 发表于 2019-5-21 16:46
分号去掉
我勒个大槽。。。这种错。。。
页:
[1]