笨小黑 发表于 2016-3-8 21:33:20

赋值问题

给一个变量赋值,位置的问题,大神来帮一下新手菜鸟。

shuofxz 发表于 2016-3-8 22:42:03

我只是口头算了一下
如果你的c放外面,你执行for循环的时候c是一直往上加的,好像c是一直不可能等于a的
如果你的c放里面,相当于每执行一次a的循环开始时c都置0了,才有可能让c==a

下次发代码的时候用代码格式发,就在编辑框有个<>符号,然后把代码粘到那里就行, 这样别人也好把你的代码复制下来调试,要不只能拿眼睛看了。。。

DAY 发表于 2016-3-9 07:51:28

我粗略看了一下你的代码没语法错误。
出现黑框,,,可能根本无法输出值。。。所以一直黑框。

满满 发表于 2016-3-9 08:56:27

#include <stdio.h>
int one=0,two=0;
int main ()
{
        int a,b,c;
        c=0;
        for (a=2;a<=1000;a++)
        {
                for (b=1;b<a;b++)
                {
                        if (a%b==0)
                                c=c+b;
                        two+=1;
                }
                if (c==a)
                        printf ("%d its factors are ",a);
                one+=1;
        }
        printf ("%d\t%d\n",one,two);
        return 0;
}
/*编写的程序没有错,只是没有达到判断的要求,所以没显示出打印,也就是说c永远不等于a*/

笨小黑 发表于 2016-3-9 14:52:07

shuofxz 发表于 2016-3-8 22:42
我只是口头算了一下
如果你的c放外面,你执行for循环的时候c是一直往上加的,好像c是一直不可能等于a的
...

谢谢了,明白了。下次注意了发图片也发代码。原来是要c恢复变0.

笨小黑 发表于 2016-3-9 14:53:21

DAY 发表于 2016-3-9 07:51
我粗略看了一下你的代码没语法错误。
出现黑框,,,可能根本无法输出值。。。所以一直黑框。

c在外面就没恢复变0,所以一直不等于a

笨小黑 发表于 2016-3-9 14:53:51

满满 发表于 2016-3-9 08:56


嗯,谢谢了,有点笨自己。
页: [1]
查看完整版本: 赋值问题