实在是调不出来了。。希望大家帮帮忙啊,,

baiye1134 2010-05-23 10:14:08
题目是:
如果一个整数(>1)的各因子(包括1,但不包括整数自身之和等于该整数,称这样的数为完全数,例如,因为6=1+2+3。所以6是完全数,编写一个已知整数判断其是否为完全数的函数,并用该函数输出1000之内的所有完全数)。

我真的调过,可是,我觉得 我的思路完全的混乱,都感觉无从下手了我,也不知道是今天软件毛病了,心比较乱还是怎么的,,反正,求大家帮帮忙啊
...全文
135 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
狂龙骄子 2010-05-23
  • 打赏
  • 举报
回复

/*环境:TC 2.0、XP SP3
备注:如要转载,请说明来源。谢谢!
*/
int main(void)
{
static int iElement_List[10];
int iElement, iFull_Num, iElement_Idx, iSum_Temp;

for(iFull_Num = 2; iFull_Num < 1000; iFull_Num++)
{
iElement_Idx = 0;
iSum_Temp = 0;

for(iElement = 1; iElement < iFull_Num; iElement++)
{
if((iFull_Num % iElement) == 0)
{
iElement_List[iElement_Idx] = iElement;
iSum_Temp = iSum_Temp + iElement;
iElement_Idx++;
}
}

if(iSum_Temp == iFull_Num)
{
printf("\n%d is a full-number.\n", iFull_Num);
printf("Elements Totaled [%d], the element list:\n", iElement_Idx);

for(iElement = 0; iElement < iElement_Idx; iElement++)
{
printf("Element_List[%d] = %d\n", iElement, iElement_List[iElement]);
}
}
}
getch();
return 0;
}
wade_2003 2010-05-23
  • 打赏
  • 举报
回复
顶3楼的了
shangqiuzuidong 2010-05-23
  • 打赏
  • 举报
回复

//判断x是否为完数,如果是,返回1,否则,返回0
int wanshu(int x)
{
int j;
int sum = 0;
for(j = 1; j <= x / 2; j++) {
if(x % j == 0) {
sum += j;
}
}

if(sum == x) {
return 1;
}
return 0;
}

建议LZ参考楼上代码,最好是弄明白了,自己敲过!
yezi1134 2010-05-23
  • 打赏
  • 举报
回复
谢了。。我了了
AlanBruce 2010-05-23
  • 打赏
  • 举报
回复
。。。。。。。。。

UP
huanmie_09 2010-05-23
  • 打赏
  • 举报
回复

//判断x是否为完数,如果是,返回1,否则,返回0
int wanshu(int x)
{
int j;
int sum = 0;
for(j = 1; j <= x / 2; j++) {
if(x % j == 0) {
sum += j;
}
}

if(sum == x) {
return 1;
}
return 0;
}
cabbge 2010-05-23
  • 打赏
  • 举报
回复
跟没说一样
cabbge 2010-05-23
  • 打赏
  • 举报
回复
好像是作业啊 呵呵呵
可以提供一下思路 代码自己敲好
1.找到该整数的各因子,这个应该很容易吧
2.求各因子的和,判断是否等于该整数,是就输出
3.整数加1,循环前两步,
这个题目比较基础,建议自己多敲多想。
wibnmo 2010-05-23
  • 打赏
  • 举报
回复
upup学习学习。。

69,372

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧