我有这个代码,旨在解释“for循环”是如何工作的。
#include <iostream>
using namespace std;
int main() {
int n;
cout << "Input a positive integer: ";
cin >> n;
int factorial = 1;
for (int i = 1; i <= n; ++i)
factorial *= i;
cout << "factorial(" << n << ") is << factorial << "\n ";
return (0);
}
int factorial =1
行有什么作用?为什么需要它?
答案 0 :(得分:4)
int factorial = 1;
定义一个标识为factorial
且类型为int
的变量。它旨在在for
- 循环的所有迭代中保存因子计算的临时结果,并保留最终结果。
使用1
显式初始化,因为
必须以某种方式初始化 ;否则,未定义的行为将是结果,因为将访问未初始化的内存位置。
0
会很糟糕,因为0 * x = 0
代表所有实数,1 * x = x
代表所有实数。