以下for
循环为什么会有不同的结果:
Python:
for i in range(0,10):
i=i-1
print(i)
输出:
-1 0 1 2 3 4 5 6 7 8
C:
for(int i=0;i<10;i++)
{
i=i-1;
print("%d",i);
}
输出:
infinite times -1
谢谢。
答案 0 :(得分:0)
在Python中,u_transitionStartTime
循环在代码内更改时不会更新变量for in range
。这是因为循环应该始终在提供的范围内进行迭代。
对于C代码,循环每次迭代都会更改i的值:i
,条件i=i-1
始终为真。
答案 1 :(得分:0)
- In C we declare a variable with data type,initiate it and then run upto some value with increment.
Some how Python deals with the same procedure but here we have to run a loop in the range
Let me give you an example:
In c : Syntax
for ( init; condition; increment ) {
statement(s);
}
int i;
for(i=1;i<=n;i++)
此循环将一直运行到i的值变为n为止。
在C ++中,您还可以在循环内声明变量。 在Python中:语法:
for iterating_var in sequence:
statements(s)
对于x范围为[1,11]