带模数的循环给我一个错误
Loop with modulus gives me an error
这是我第一次发布问题,但这个循环让我发疯。我不知道它有什么问题。它在进入第二个循环的那一刻崩溃了。它看起来不错并且有道理,但仍然不起作用。任何帮助将不胜感激。谢谢!
/**
Author: Yunus Kulyyev
Date: 10-Dec-2016
Description:
**/
#include <iostream>
using namespace std;
int main()
{
for (int x=1; x < 10; x++)
{
cout << x <<": ";
for (int y = 0; y <= x; y++)
{
if (x%y == 0)
{
cout << y;
}
}
cout << endl;
}
return 0;
}
如果 /
或 %
的第二个操作数为零,则行为为 未定义。请参阅 SO 中的 post。在您的程序中,对于内部 for 循环的第一次迭代,y = 0
因此以下代码片段导致 undefined 行为。
if (x%y == 0) {
cout << y;
}
这是我第一次发布问题,但这个循环让我发疯。我不知道它有什么问题。它在进入第二个循环的那一刻崩溃了。它看起来不错并且有道理,但仍然不起作用。任何帮助将不胜感激。谢谢!
/**
Author: Yunus Kulyyev
Date: 10-Dec-2016
Description:
**/
#include <iostream>
using namespace std;
int main()
{
for (int x=1; x < 10; x++)
{
cout << x <<": ";
for (int y = 0; y <= x; y++)
{
if (x%y == 0)
{
cout << y;
}
}
cout << endl;
}
return 0;
}
如果 /
或 %
的第二个操作数为零,则行为为 未定义。请参阅 SO 中的 post。在您的程序中,对于内部 for 循环的第一次迭代,y = 0
因此以下代码片段导致 undefined 行为。
if (x%y == 0) {
cout << y;
}