主题:这个循环怎么有点怪啊。。
不知道是不是脑子进水。 下面代码 是求完数的。。
#include<iostream.h>
void main()
{
int m;
for(m=1;m<=1000;m++)
{
int k=0;
for(int i=1;i<m;i++)//我用编译器跑了下 怎么到这 m=2??
{
if((m%i)==0)
k=k+i;
}
if(k==m)
cout<<" "<<m<<endl;
}
}
我的思路是①。m=1;m<=1000;
int k=0;
int i=1;
i<m;m不会小于i啊。。所以接着。。下面的都将不会执行。。。
第二次编译。。
i++;
int i=2;
i<m;//根本不成立啊。。所以 我认为 怎么不会执行啊。。。 刚刚学习C++ 求答案啊。。
#include<iostream.h>
void main()
{
int m;
for(m=1;m<=1000;m++)
{
int k=0;
for(int i=1;i<m;i++)//我用编译器跑了下 怎么到这 m=2??
{
if((m%i)==0)
k=k+i;
}
if(k==m)
cout<<" "<<m<<endl;
}
}
我的思路是①。m=1;m<=1000;
int k=0;
int i=1;
i<m;m不会小于i啊。。所以接着。。下面的都将不会执行。。。
第二次编译。。
i++;
int i=2;
i<m;//根本不成立啊。。所以 我认为 怎么不会执行啊。。。 刚刚学习C++ 求答案啊。。