| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 445 人关注过本帖
标题:帮忙看一下我写的程序哪里错了
只看楼主 加入收藏
wwfdzh2012
Rank: 2
等 级:论坛游民
帖 子:88
专家分:27
注 册:2012-11-22
结帖率:94.12%
收藏
已结贴  问题点数:10 回复次数:10 
帮忙看一下我写的程序哪里错了
程序代码:
#include<stdio.h>
void main()
{
    int i,j,s=0;
    for(i=2;i<=1000;i++)
    {
        for(j=1;j<i;j++)
            if(i%j==0)s=s+j;               
        if(s==i)
            printf("s=%d ",s);
        }   
}
输出“完数”的程序,编译通过,输出无结果。。。帮忙改一下。。。
2012-12-09 22:31
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:0 
最后一行 加个 }
就行了

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2012-12-09 22:48
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:0 
楼主太大意了吧

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2012-12-09 22:49
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:5 
不多说
程序代码:
#include<stdio.h>
void main()
{
    int i, j, s;
    for(i = 2;i <= 1000;i++)
    {
        for(s = 0, j = 1;j < i;j++)
            if(i % j == 0)
                s = s + j;             
        if(s == i)
            printf("s = %d ", s);
    } 
}


[fly]存在即是合理[/fly]
2012-12-09 22:50
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:0 
赞同4楼

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-12-09 23:08
daniel_
Rank: 5Rank: 5
等 级:职业侠客
帖 子:212
专家分:307
注 册:2012-11-13
收藏
得分:5 
#include<stdio.h>

void main()
{
    int i = 0;
    int j = 0;
    int s = 0;

    for(i = 2;i <= 1000;i++)
    {
        for(j = 1;j < i;j++)
        {
            if(i%j == 0)
                s = s+j;
        }
        if(s == i)
            printf("s = %d\n",s);

        s = 0;//记得s要清零
    }
}
2012-12-10 09:31
wwfdzh2012
Rank: 2
等 级:论坛游民
帖 子:88
专家分:27
注 册:2012-11-22
收藏
得分:0 
回复 2楼 yuccn
不是括号问题,是赋初值的问题,我给S赋值是全局变量,改成局部变量就可以了,不是很清楚,麻烦讲一下。。
2012-12-10 10:10
wwfdzh2012
Rank: 2
等 级:论坛游民
帖 子:88
专家分:27
注 册:2012-11-22
收藏
得分:0 
回复 6楼 daniel_
S为什么要清零?我在全局变量给S赋值为0了,效果有什么不一样呢?
2012-12-10 10:13
daniel_
Rank: 5Rank: 5
等 级:职业侠客
帖 子:212
专家分:307
注 册:2012-11-13
收藏
得分:0 
回复 7楼 wwfdzh2012
s = 0;//记得s要清零

你的S没有清零,所有s一直在增加 ,明白??
2012-12-10 10:13
daniel_
Rank: 5Rank: 5
等 级:职业侠客
帖 子:212
专家分:307
注 册:2012-11-13
收藏
得分:0 
回复 8楼 wwfdzh2012
全局变量是什么?
翻翻课本查查再讲。。。
---
你的s在for 中是不断增加的,每执行完一次for循环需要清零一下

S是干嘛的??自己不清楚么?
2012-12-10 10:16
快速回复:帮忙看一下我写的程序哪里错了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022223 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved