所以这是我的第二个程序,我尝试在for循环中编写if语句。第一个是不必要的,但这个“需要”它。我把需求放在引号中,因为我是C ++的新手,并没有学习/想到另一种方法。
我的节目:
int main()
{
int x, z;
cout << " x | z | y\n"
<< "---------------------------\n";
for (x = 1; x <=5; x++)
{
for (z = 2; z <= 6; z++)
{
double y = x*z/(x-z);
if (x - z == 0)
{
cout << setw(2) << x << setw(4) << z << setw(21) << "Function Undefined\n";
}
else if (x - z != 0)
{
cout << setw(2) << x << setw(4) << z << setw(21) << y << endl;
}
}
}
return 0;
}
当我运行它时,我得到一个表,第一个循环序列(x = 1)已完成,但随后崩溃(Windows正在查找弹出的解决方案框)。它仅为x = 1写出正确的值(外部循环不会重复到x = 2,依此类推)。
为什么会这样?
答案 0 :(得分:4)
«耳语»......嘿......你除以0男孩......
答案 1 :(得分:1)
你把if语句放在实际数学之前。如果除以零,则会发生错误。 将数学放在else if块中。