#include<iostream>
using namespace std;
int main()
{
int x = 0;
for (int i = 1; i < 10; i++)
{
i *= 100;
for (int j = 0; j < 10; j++)
{
j *= 10;
if (x=i+j+9,x % 7 == 0)
{
cout << x;
}
}
}
return 0;
}
i 和 j 作为索引,你再计算过程中改变了它的值
如:
i *= 100;
i 是原来的100倍了,i已经小于10了,所以无法循环继续了。
同理,j也用同样的错误。
改成如下即可:
#include<iostream>
using namespace std;
int main()
{
int x = 0;
for (int i = 1; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
if (x=i*100 + j*10+9,x % 7 == 0)
{
cout << x;
}
}
}
return 0;
}