这段代码有什么错误请帮忙:

What is the error in this code please help:

这段代码有什么错误,请帮忙。它没有 运行.

x=o;
while (x < 10);
    x++;

for (i= .2; i =3; i++)
cout << "i = ";
cout << i;

删除“;”从 while 条件并用 0 而不是 o 初始化 x。您的代码应如下所示:

x=0;
while (x < 10)
    x++;

如果这解决了您的问题,请告诉我。

第一个代码片段运行一个无限循环,因为在 "while" 的 decleration 之后有一个分号:

while (x < 10); // <-- this semicolon 

第二个代码片段有几个问题:

  • 缺少括号

  • "stop condition" 是赋值 i=3 而不是比较:i==3i <= 3

  • i 递增“1”时,它永远不会是“3”,而是:1.2, 2.2, 3.3, ...无限循环

这里有一个解决方法:

for (i= .2; i == 3; i += .2) { // <-- missing surrounding brackets
    cout << "i = ";
    cout << i;
}
  1. X = 0 ('zero')o ('oh')
  2. 您是否包含 std,如果没有,则使用 std::cout 并在 for 循环中包含 {} 括号。但是你想从你的第二个代码中实现什么?因为你的i=3永远不会满足。

我在哪里定义的?

在 for 循环中,由于您没有大括号(如果我们假设条件是错字而您实际上是想写 i <= 3),则循环将执行。

cout << "i = "; n times <-- note that it only prints i = i = i = ...

一旦 for 循环结束,

cout << n; will be printed once.

所以你的最终输出应该是这样的:

i = i = i = i = .... i = 3  <--3 is the final value

如果你的 for 循环实际上有 i = 3,那么它每次都将 3 分配给 i 所以它将是一个无限循环。

Here是关于流量控制的教程。

让我们看看您代码中的每个错误。

首先

x=o;

您是指 0(零)还是变量 o 或字符 'o'
如果它是 0(零)或 'o'(字符)或变量(值大于或等于 10),则循环不会 运行,因为条件

while (x < 10);

如果 o 是一个变量(并且它的值小于 10 ),那么它将是一个无限循环,因为你在 while 循环之后留下了一个分号。 如果 while 循环后没有分号,那么循环将一直执行到条件 x < 10 returns false.

下一个

for (i= .2; i =3; i++)
cout << "i = ";
cout << i;

首先,这里应该有 {} 吗?也许您的实际代码是

for (i= .2; i =3; i++)
{
cout << "i = ";
cout << i;
}

如果没有大括号{},那么for循环下只会执行第一行,即cout << "i = ";(除非你改变for循环条件,否则就是死循环).

此外,您的意思是 .2 还是 2(它们是不同的)

接下来,如果 i 是一个浮点数(或整数),那么这将是一个无限循环,因为您的 for 循环中的条件是 i = 3。将值 3 分配给 i 并且它将 return 为真,因此,循环将是一个无限循环。

如果将条件更改为 i == 3(它将迭代 0 次)或 i < 3(它将迭代 1 次),那么它将起作用。

如果 i 是一个整数,那么小数点后的所有值都将被跳过,最初,i 将具有值 0 而不是 0.2,但它仍然是一个无限循环,除非你改变前面提到的条件。

但是,如果将其更改为 i < 3,那么它将迭代 3 次(因为 i 将获得值 01 , 和 2 )

好吧,这些是您的代码中的错误。现在,代码可能会因您的初衷而有所不同,但这里有一些示例

int x = 0;
while (x < 10)
    x++;

结果
x 将在循环结束后具有值 10

下一个代码

int i;
for ( i = 2 ; i < 3 ; i++ )
  {
    cout << "i = ";
    cout << i;
  }

输出

i = 2